gpt4 book ai didi

Java JComboBox 监听更改选择事件

转载 作者:行者123 更新时间:2023-12-02 13:48:15 25 4
gpt4 key购买 nike

我正在尝试监听 Java JComboBox 中的选择更改。我尝试使用 ActionListener 但问题是这样的: Action 监听器会执行类似的操作

public void actionPerformed(ActionEvent e){
JComboBox<String> source = ((JComboBox<String>)e.getSource());
String selected = source.getItemAt(source.getSelectedIndex());

/*now I compare if the selected string is equal to some others
and in a couple of cases I have to add elements to the combo*/
}

正如您所注意到的,当我需要向组合中添加元素时,会触发另一个事件并再次调用 actionPerformed 方法,即使我不希望这样,并且代码可能会循环...:(有没有办法只监听选择更改而不监听通用更改事件?谢谢

最佳答案

您可以尝试 ItemListeneritemStateChanged() 方法接口(interface):

class ItemChangeListener implements ItemListener{
@Override
public void itemStateChanged(ItemEvent event) {
if (event.getStateChange() == ItemEvent.SELECTED) {
Object item = event.getItem();
// do something with object
}
}
}

并将监听器添加到您的 JComboBox:

source.addItemListener(new ItemChangeListener());

关于Java JComboBox 监听更改选择事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17576446/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com