繁体   English   中英

JList 不显示选定的值

[英]JList does not show selected value

这是我的问题:在一个小型 Swing 应用程序中,我创建了一个JList ,它与ListDefaultModel一起使用。 我在其中放入了一些值,当我尝试单击这些值时,图形没有任何变化。

我的意思是:选择事件被引发,但我没有小矩形,它通常是蓝色的。

我希望你会有一些想法。

我遇到了同样的问题(感谢 OP 的提示)。 原来我的ListCellRenderer类正在实现ListCellRenderer接口而不是扩展DefaultListCellRenderer 并调用super.getListCellRendererComponent

所以用

class MyListCellRenderer extends DefaultListCellRenderer {}

代替

class MyListCellRenderer extends JLabel implements ListCellRenderer {}

根据我的经验,此类错误通常是由代码中抛出的其他异常引起的。 换句话说,如果由于 SWING 尝试检索要显示在列表中的值而在您的代码中抛出 NullPointerException,那么您的 GUI 可能会变得无响应或表现异常。

我的第一个建议是尝试一个非常简单的例子,比如:

DefaultListModel m = new DefaultListModel();
m.addElement("One");
m.addElement("Two");
m.addElement("Three");
m.addElement("Four");
m.addElement("Five");
SomeList.setModel(m);

如果可行,请检查您的代码以查看是否有问题。 如果上面的例子也不起作用,那么我会说你应该在这里发布更多细节。

祝你好运!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM