Java 根据从另一个JComboBox中选择的内容更改JComboBox的元素
我有一个通过JPA从MySQL数据库生成统计图表的小应用程序。为了选择要包含在统计中的DB组件,我安装了2个JComboxes。第一个JComboBox由Category1的元素填充,第二个JComboBox由Category2的元素填充,Category2是Category1的子类别。我要做的是只使用Category2中链接到JCombox1中的选择的元素填充JCombox2Java 根据从另一个JComboBox中选择的内容更改JComboBox的元素,java,swing,jcombobox,Java,Swing,Jcombobox,我有一个通过JPA从MySQL数据库生成统计图表的小应用程序。为了选择要包含在统计中的DB组件,我安装了2个JComboxes。第一个JComboBox由Category1的元素填充,第二个JComboBox由Category2的元素填充,Category2是Category1的子类别。我要做的是只使用Category2中链接到JCombox1中的选择的元素填充JCombox2 示例:类别1为汽车品牌,类别2为车型;我希望JCombox2只显示所选品牌的型号,现在它显示每个品牌的所有可用型号。首
示例:类别1为汽车品牌,类别2为车型;我希望JCombox2只显示所选品牌的型号,现在它显示每个品牌的所有可用型号。首先,在Combox1上添加一个侦听器:
private void comboBox1ItemStateChanged(java.awt.event.ItemEvent evt) {
if (java.awt.event.ItemEvent.DESELECTED == evt.getStateChange()) {
String valueBeforeDeselection = evt.getItem().toString();
// Do something if needed
} else if (java.awt.event.ItemEvent.SELECTED == evt.getStateChange()) {
String valueAfterSelection = evt.getItem().toString();
// Set the values of the ComboBox2
}
}
为了填充ComboBox2,您应该首先清空它
comboBox2.removeAllItems();
comboBox2.addItem("Value 1");
comboBox2.addItem("Value 2");