Mar*_*hke 3 java swing jlist selectionchanged
我有一个JList并注册一个选择处理程序(ListSelectionListener).现在我需要现在以前选择的项目/索引.
到目前为止,我自己保存了最后一个选定的项目.有没有更好的方法呢?换句话说:这些年来我是否有错过的方法/最佳实践?!
cam*_*ckr 10
我的一个列表是仅限单选.像kleopatra说的那样.事件数据在这里没有帮助.
这不是Kleopatra所说的.事件数据确实有帮助.您不能假设第一个索引表示所选行,最后一个索引表示上一行.
正如Kleopatra建议您需要进一步检查.就像是:
public void valueChanged(ListSelectionEvent e)
{
JList list = (JList)e.getSource();
int selected = list.getSelectedIndex();
int previous = selected == e.getFirstIndex() ? e.getLastIndex() : e.getFirstIndex();
System.out.println();
System.out.println("Selected:" + selected);
System.out.println("Previous:" + previous);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3329 次 |
| 最近记录: |