gpt4 book ai didi

java - 对 JComboBox 使用 switch 语句

转载 作者:行者123 更新时间:2023-11-30 10:54:38 25 4
gpt4 key购买 nike

我有一个 JComboBox 设置如下所示:

private String[] boxChoices = {"option 1", "option 2"};
JcomboBox box = new JCombobox(boxChoices);

box.addItemListener()
{
public void itemStateChanged(ItemEvent event)
{
int selection = box.getSelectedIndex();
switch (selection)
{
case 0: JOptionPane.showMessageDialog(null, "you have selected option 1");
break;
case 1: JOptionPane.showMessageDialog(null, "you have selected option 2");
break;
default: break;
}
}
}

我的问题是,当我选择一个选项时,消息将显示两次而不是一次。例如,如果我选择选项 1,将出现以下内容:

you have selected option 1
you have selected option 1

发生这种情况的原因是什么?

最佳答案

除了@Blip的回答,你还可以使用actionListener。 JComboBox 的 actionEvent 仅在您更改选择时触发一次。

box.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {

int selection = box.getSelectedIndex();
switch (selection) {
case 0:
JOptionPane.showMessageDialog(null, "you have selected option 1");
break;
case 1:
JOptionPane.showMessageDialog(null, "you have selected option 2");
break;
default:
break;
}
}
});

关于java - 对 JComboBox 使用 switch 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33585982/

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