Java Swing JComboBox,mouseListener 不工作

标签 java swing jcombobox mouselistener

我有一个 JComboBox,单击它时应该会更新 JLabel 的内容。我目前正在使用 mouseListener 来检测用户何时单击 JComboBox,如下所示:

myComboBox.getEditor().getEditorComponent().addMouseListener(
            new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
            updateMyJLabel(evt);
            }
        });

在这个片段之外更新 JLabel 没有任何问题。我之前设置了它,以便我可以更改 JComboBox 的内容,然后单击 JButton 更新 JLabel,它工作正常。但是,每次我需要更新 JLabel 时单击按钮很快就会变得乏味。但是当我在使用上面的代码后将 myComboBox 添加到布局时,代码从未真正执行过。我还尝试在对 updateMyJLabel 的调用上方放置一个打印语句,但即使那样也没有做任何事情,控制台还是很漂亮,令人沮丧的是空白。

这只是我尝试 ui 开发的第二天,如果这是一个愚蠢的问题,我深表歉意。我在这里阅读了很多关于 SO 的其他问题,有些人说不要在 JComboBox 上使用 mouseListener,其他人说这样的代码非常适合他们,所以我有点困惑为什么这不是'工作。

非常感谢任何建议和帮助。

最佳答案

参见 JComboBox.addItemListener(ItemListener) .它在鼠标或键盘选择上可靠地工作。

关于Java Swing JComboBox,mouseListener 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21226086/

相关文章:

java - 如何更改 JSeparator 的颜色?

java - 覆盖 CellRenderer,ImageIcon 消失

java - 在 Swing 中使用数组列表填充组合框

java - OpenJDK 8 中 ImageIO.read 错误的解决方法?

java - 重量级之上的轻量级

java - RC4 实现之间的差异

java - JComboBox 的圆角

java - JComboBox 是一个菜单

java - 为什么即使在 spring 服务类的第二种方法中 propagation=Propagation.REQUIRES_NEW 时事务也会回滚?

java - 删除偶数长度