您好,我正在尝试将一个对象从一个组合框传输到另一个组合框,反之亦然。 为了实现这一目标, 我使用 actionListeners 或 ItemListeners,不幸的是它们没有回答我的问题,或者可能只是我的实现中有问题。
假设我们有组合框、组合框1和组合框2。 基本上, 1.我首先将所选项目添加到另一个组合框(combobox2) 2.我删除第一个组合框(combobox1)上的所选项目
当尝试调试这个时,我发现每次我在删除项目的步骤时,另一个组合框的监听器都会触发,它执行与上面相同的步骤。这会导致一个循环,仅删除该项目,并将其放回原始组合框。
使用 ItemListener 时,如果条件正确,是否被选中,则会引发更大的错误。各位请帮帮我..
*处于编辑模式/当前正在制作 SSCE
最佳答案
找到this ,正如 mKorbel 爵士所建议的那样。 它成功了,通过 setModel(DefaultComboBoxModel model) 方法设置模型,当它尝试添加传递的模型的内容时,不会触发 ActionListener,而 addItem(Object obj) 方法会触发 ActionListener,导致我在上面描述的严重破坏我的问题在上面。
谢谢大家,我了解到了一个叫做 DefaultComboBoxModels 的新东西!
关于java - 将项目从一个 JComboBox 传输到另一个 JComboBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25445924/