我在Java中为JList
类编写了一个代码,该代码使用JOptionPane
显示列表中的选定项,但它无法正常工作。显示在附图中。
任何人都可以帮助我吗?
[screenshot] [1]
答案 0 :(得分:0)
替换:
add(l);
由:
getContentPane().add(l);
对所有“添加”调用执行相同操作。
此外,“places.getSelectedValues()”返回一个Collection。你应该迭代它。
答案 1 :(得分:0)
删除Handler
类并实现以下方法:
places.addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
JOptionPane.showMessageDialog(null,"your selection: "+ (places.getSelectedValuesList()));
}
});
现在由您决定如何显示所选值:)我只给了您处理数据所需的监听器
答案 2 :(得分:0)
places.getSelectedValues();
该方法返回一个数组,您可以看到数组的toString表示。
如果您阅读getSelectedValues()
方法的API,您会看到它已被弃用。在编译类时不要忽略警告消息!!!
API建议您使用getSelectedValuesList()
方法。此方法返回一个列表,该列表将为您格式化列表中的项目。
如果你不喜欢List的默认格式,那么你需要遍历列表并自己格式化文本。