gpt4 book ai didi

java - 同步 JList 和 JComboBox?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:36:22 27 4
gpt4 key购买 nike

在 Java Swing 中,JListJComboBox 在数据方面同步的最佳方式是什么,即在任何给定的时间点?基本上,如果我向一个添加项目(或从中删除项目),另一个应该会自动反射(reflect)更改。

我尝试过以下操作,但似乎不起作用:

JList list = new JList();
JComboBox comboBox = new JComboBox();
DefaultListModel listModel = new DefaultListModel();
// add items to listModel...
list.setModel(listModel);
comboBox.setModel(new DefaultComboBoxModel(listModel.toArray()));

最佳答案

您的模型 - 列表的 ListModel 和组合框的 ComboboxModel - 需要同步。

在一般情况下,这意味着编写模型的特殊实现,但在您的情况下,您很幸运:DefaultComboBoxModel 实际上实现了 ListModel,因此您可以简单地为两个组件使用相同的模型对象。

JList list = new JList();
JComboBox comboBox = new JComboBox();
DefaultComboBoxModel listModel = new DefaultComboBoxModel();
// add items to listModel...
list.setModel(listModel);
comboBox.setModel(listModel);

关于java - 同步 JList 和 JComboBox?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4939563/

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