gpt4 book ai didi

java - Actionlistener/JComboBox 冲突

转载 作者:行者123 更新时间:2023-12-01 15:11:49 25 4
gpt4 key购买 nike

我正在尝试编写一个程序,该程序将从一个下拉框中获取输入,并使用它来计算另一个字段的下拉框,但我一直遇到问题。为了使其工作,我必须在重新填充 JComboBox 之前删除 JComboBox 上的所有项目,但这会导致程序引发异常。

jbox1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
autoCalc();

String s = jbox1.getSelectedItem().toString();
workS.set1(s);
jbox2.removeAllItems();
for(int i = 0; i <= workS.jbox1.getSelectedItem; i++)
{
String temp = ("" + i);
jbox2.addItem(temp);
}
autoCalc();
}
});


jbox2.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
autoCalc();
String s = jbox2.getSelectedItem().toString();
workS.set2(s);
autoCalc();
}
});

据我所知,从 jbox2 中删除所有项目会调用 jbox2 Action 监听器,该监听器意识到该字段为空并引发异常。有人有办法解决这个问题吗?

最佳答案

保留添加到 jbox2 的 ActionListener 的引用。在删除项目并填充新列表之前,请删除 ActionListener 并在模型填充新项目后读取。

关于java - Actionlistener/JComboBox 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12240729/

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