2009-10-09 61 views
19

我有一個JList其中有很多項目,其中一個被選中。我想滾動到此JList中的選定項目,以便用戶可以快速查看選擇了哪個項目。Java JList滾動到選定的項目

我該怎麼做?

String[] data = {"one", "two", "three", "four", /* AND A LOT MORE */}; 
JList dataList = new JList(data); 
JScrollPane scrollPane = new JScrollPane(dataList); 
+0

,以確保它始終是可見的,你可以重寫的setSelectedIndex方法,並調用Sbodd的方法從那裏。 – WVrock 2015-06-08 13:18:37

回答

48

這應做到:

dataList.ensureIndexIsVisible(dataList.getSelectedIndex()); 
10

或者,如果多選啓用:

dataList.scrollRectToVisible(
     dataList.getCellBounds(
      dataList.getMinSelectionIndex(), 
      dataList.getMaxSelectionIndex() 
     ) 
); 
+0

其dataList.getMinSelectionIndex() 但是,答案仍然對我有用:) – Fortega 2009-10-09 15:06:58

+0

謝謝 - 編輯的代碼從'Selelected'到'Selection' – Nate 2009-10-09 17:00:10