2011-10-16 2 views
0

내 응용 프로그램에서 목록을 사용하고 있습니다. 이 목록은 리프레시 목록 단추로 업데이트 할 수 있습니다.이 단추는 serever에서 더 많은 데이터를 검색합니다. 새로 고침 버튼을 누르면 사용자가 내 응용 프로그램이 일원이 필드에 마지막으로 선택한 항목을 seves 때 는 - 목록을 업데이트 한 후Blackberry가 ListField의 previus 위치로 돌아갑니다.

lastPosition = listField.getSelectedIndex(); 

, 내 응용 프로그램을 사용 -

listField.setSelectedIndex(lastPosition); 

을 마지막 위치를 설정. 하지만 아무 일도 일어나지 않습니다.

어떻게 목록의 커서를 lastPosition을 가리 키도록 이동할 수 있습니까? 감사합니다. 감사합니다. Eyal.

   listField.setKeyword(""); 
      listField.v = userVector;    
      listField.updateList(); 
      listField.getResultList(); 
      listField.setSelectedIndex(lastPosition); 
      listField.setFocus(); 
      Manager manager = listField.getManager(); 
      int rowHeight = listField.getRowHeight(); 
      manager.setVerticalScroll(lastPosition * rowHeight); 
      listField.invalidate(); 

답변

2

그러나 그것은 먼저 떠오르는 것은 아마도 당신이 위치를 복원 직후 목록에 포커스를 설정하지 않는 코드를 보지 않고 어떤 문제가 있는지 짐작하기 어렵다? 그렇지 않다면 시도해보십시오.

listField.setSelectedIndex(lastPosition); 
listField.setFocus(); 
+0

Now. 커서는 ListField의 첫 번째 항목으로 "점프"합니다. – eyal

+0

처음 포커스를 listfield에 설정 한 다음 인덱스를 설정하는 방법은 무엇입니까? – denolk

+0

문제를 해결하지 못했습니다 :-( – eyal