【问题标题】:JComboBox, trigger an action if the selected item is change or the same is selectedJComboBox,如果选中的项目发生变化或被选中,则触发一个动作
【发布时间】:2019-03-29 15:10:01
【问题描述】:

我正在使用JComboBox,如果所选项目发生更改,它将触发另一个框架的打开。

这是一个代码示例。

String[] liste = {"Stack", "Over", "Flow"};
JComboBox comboBox = new JComboBox(liste);
comboBox.addItemListener(e -> {
    if(e.getStateChange() == 2) { //because that listener is called twice, when the item is unselected and the new is selected
        FramePopUp popUp1 = new FramePopUp(); //Class that extends JFrame
    }
});

我的问题是,当用户选择两次相同的项目时,我也希望触发此框架。

例如:

在这种情况下,用户选择“结束”项,框架弹出,用户处理框架和他必须提供的信息,然后关闭框架。

他记得他忘记填写一个信息,所以他重新选择了“结束”项,但没有任何反应,因为他没有更改选择的项。

【问题讨论】:

标签: java swing actionlistener jcombobox itemlistener


【解决方案1】:

只需添加一个 ActionListener 而不是 ItemListener。

另请参阅JCombobox - Only execute actionlistener when value changes 有人与您有相反的问题

【讨论】:

  • @ichigo vingt-neuf 如果它解决了你的问题,你能接受这个答案吗?
猜你喜欢
  • 2011-05-23
  • 2015-01-02
  • 1970-01-01
  • 1970-01-01
  • 2012-04-16
  • 2017-05-23
  • 1970-01-01
  • 2012-10-01
  • 2013-02-12
相关资源
最近更新 更多