4 java swing jlist listselectionlistener
有什么方法可以使用 ListSelectionListener 或 MouseAdapter 来获取有关所选值的信息(例如,如果值是字符串),是否有任何内置方法?
我只知道如何获得正确的索引,但不知道内容或 content.toString()
我正在添加这样的元素:
{
DefaultListModel listModel;
listModel.addElement(name);
}
Run Code Online (Sandbox Code Playgroud)
@Edit
感谢您的帮助。我这样做解决了我的问题(为了后代,所以他们不需要像我一样搜索):
Run Code Online (Sandbox Code Playgroud)list.addMouseListener(new MouseAdapter(){ @Override public void mouseClicked(MouseEvent e) { System.out.println("Mouse click."); int index = list.getSelectedIndex(); System.out.println("Index Selected: " + index); String s = (String) list.getSelectedValue(); System.out.println("Value Selected: " + s.toString()); } });
使用 a 时,JList您可以简单地使用JList#getSelectedValue()它将返回当前选择的实际对象。
如果您是从 a 内执行此操作MouseListener,最好使用JList#locationToIndex然后从JList使用它的索引中获取值
String value = (String)list.getModel().getElementAt(list.locationToIndex(e.getPoint()));
Run Code Online (Sandbox Code Playgroud)