首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Actionlistener/JComboBox clash

Actionlistener/JComboBox clash
EN

Stack Overflow用户
提问于 2012-09-03 08:07:35
回答 1查看 718关注 0票数 0

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

代码语言:javascript
复制
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操作侦听器,它会意识到该字段为空并抛出异常。有没有人有办法解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2012-09-03 13:58:21

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12240729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档