Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何识别两个JComboxes中的哪一个生成了itemchanged事件?_Java_Swing_Jcombobox - Fatal编程技术网

Java 如何识别两个JComboxes中的哪一个生成了itemchanged事件?

Java 如何识别两个JComboxes中的哪一个生成了itemchanged事件?,java,swing,jcombobox,Java,Swing,Jcombobox,我有一个类,它构造了一个GUI,它分别有两个jComboBox、comboA和comboB。我有另一个类处理这个GUI上的组件事件。我想对每个组合框的Itemchanged事件调用两个不同的方法 我想知道,如何识别两个组合框事件中的哪一个发生了? 如何跟踪哪个组合框的项已更改?每个事件对象都与源组件关联。您将需要对这些组件的引用,并与返回的组件进行比较。您可以设置组合框的名称并对照其名称进行检查 ActionListener的actionPerformed(ActionEvent)方法提供Act

我有一个类,它构造了一个GUI,它分别有两个
jComboBox
comboA
comboB
。我有另一个类处理这个GUI上的组件事件。我想对每个组合框的
Itemchanged
事件调用两个不同的方法

我想知道,如何识别两个组合框事件中的哪一个发生了?
如何跟踪哪个组合框的项已更改?

每个事件对象都与源组件关联。您将需要对这些组件的引用,并与返回的组件进行比较。

您可以设置组合框的名称并对照其名称进行检查

ActionListener的actionPerformed(ActionEvent)方法提供ActionEvent类型的参数。使用ActionEvent的getSource()方法询问其事件源。如果事件来自某个JCheckbox,则可以将其强制转换为该类型,并且您可以标识源。或者使用两个不同的ActionListener