2012-04-08 97 views
2

是否有一种方法可以将哈希映射的条目值与JComboBox同步。这意味着当我添加更多项目到哈希映射中时,JComboBox会自动识别出可以选择新项目。使用jcombobox同步哈希映射

回答

5

您可以通过自组合框模型的数据扩展AbstractListModel<E>,实施ComboBoxModel<E>ListModel<E>MutableComboBoxModel<E>,并使用TreeMap<T, E>作为模型类的核(树形图,而不是HashMap中创建自己的组合框模型必须按照一定的顺序进行维护)。无论何时向HashMap添加或删除数据,都要确保启动正确的数据更改方法。

+1

不会是容易,因为为了在'HashMap'是不确定的,如果我没错。这是'ListModel'所要求的。 – Robin 2012-04-08 16:09:50

+0

@Robin:True。我也在考虑这个问题,也许最好使用一个有一些排序的Map,如TreeMap。 – 2012-04-08 16:10:25

+1

似乎是一个很好的建议,值得一提的是你的回答 – Robin 2012-04-08 16:11:33

0

扩展HashMap来实现可观察接口只是把HashMap中的 add方法观测器设计更新的功能和聆听更新您的JComboBox

+0

java.util.Observable类不是一个接口。 – trashgod 2012-04-08 17:23:37

+0

@trashgod我的坏..观察员 – Kamal 2012-04-08 18:57:44