我有以下問題: 有2個JList的在我的框架:爪哇 - 清除選擇在其他的JList
listModel = new DefaultListModel();
ownlistModel = new DefaultListModel();
fillList();
ownBookList = new JList(ownlistModel);
ownBookList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
ownBookList.setLayoutOrientation(JList.VERTICAL);
ownBookList.setSelectedIndex(-1);
userlist = new JList(listModel);
userlist.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
userlist.setLayoutOrientation(JList.VERTICAL);
userlist.setSelectedIndex(0);
現在,這些是互斥的,所以如果有人在一個列表中點擊一個項目,應清除其他列表中的先前選擇。
ls2Handler = new ListSelectionListener(){
@Override
public void valueChanged(ListSelectionEvent e) {
if (e.getValueIsAdjusting() == false) {
// System.out.println(ownBookList.getSelectedValue().toString().length());
Global.selectedUser = ownBookList.getSelectedValue().toString();
Global.selectedIndex = ownBookList.getSelectedIndex();
userlist.clearSelection();
updateFields(Global.selectedUser, 1);
}
}
};
lsHandler = new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
if (e.getValueIsAdjusting() == false) {
// System.out.println(userlist.getSelectedValue().toString().length());
Global.selectedUser = userlist.getSelectedValue().toString();
Global.selectedIndex = userlist.getSelectedIndex();
ownBookList.clearSelection();
updateFields(Global.selectedUser, 0);
}
}
};
userlist.addListSelectionListener(lsHandler);
ownBookList.addListSelectionListener(ls2Handler);
在調用值是調節功能,我總是得到NullPointerException異常:
在書籍$ 3.valueChanged(書籍異常在線程 「AWT-EventQueue的-0」 顯示java.lang.NullPointerException 。 javax.swing.JList.fireSelectionValueChanged(Unknown Source)
爲什麼?正如你所看到的,它們已經被宣佈並且應該可以訪問。
更好地幫助發佈[SSCCE](http://sscce.org/) – mKorbel