【发布时间】:2011-06-26 07:38:54
【问题描述】:
我正在使用 Eclipse IDE 开发桌面 (swing) 应用程序。我有三个组合框(国家、州和城市),当我选择一个新的国家或省时,我需要自动更新数据。我搜索了很多信息,但我找到的所有实现都是在 Ajax 或 NetBeans 中的 beansbinding 框架上进行的。 我尝试了 ItemEvent 的解决方案,但我在启动我的应用程序时遇到了问题,它加载了国家列表而不是其他列表。并且通过选择一个国家来收取州列表而不是城市列表。
我的代码:
jComboBoxCountries.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
jComboBoxStates.setModel(new javax.swing.DefaultComboBoxModel(
statesOf(evt.getItem()).toArray() ));
}
});
jComboBoxStates.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
jComboBoxCities.setModel(new javax.swing.DefaultComboBoxModel(
citiesOf(evt.getItem()).toArray()) );
}
});
jComboBoxCountries.setModel(new javax.swing.DefaultComboBoxModel(
countryList.toArray()));
【问题讨论】:
标签: java eclipse swing data-binding jcombobox