如何知道在JAVA中选择了哪个列表

如何知道在JAVA中选择了哪个列表,java,swing,itemlistener,Java,Swing,Itemlistener,我在一个程序中有两个选项列表,我将ItemListener添加到两个列表中。 如何知道用户在itemStateChanged(ItemEvent ie)中选择了哪个列表 如果是ItemListener,是否有任何方法可以识别事件源,因为ActionListener中有getSource()。在itemStateChanged(ItemEvent ie)中,您会得到一个ItemEvent 查看您拥有的getItemSelectable()方法: public ItemSelectable getI

我在一个程序中有两个选项列表,我将ItemListener添加到两个列表中。 如何知道用户在itemStateChanged(ItemEvent ie)中选择了哪个列表

如果是ItemListener,是否有任何方法可以识别事件源,因为ActionListener中有getSource()。

itemStateChanged(ItemEvent ie)
中,您会得到一个
ItemEvent

查看您拥有的
getItemSelectable()
方法:

public ItemSelectable getItemSelectable()
返回事件的发起人

使用它

如何知道用户选择了哪个列表

ItemEvent#getSource
将返回对生成事件的对象的引用


如果您通读了,您将看到
ItemEvent
ActionEvent
都是从同一个基本
EventObject
扩展而来的,而
getSource
实际上是在这个基本
ItemEvent#getSource
中定义的。如果您通读了JavaDocs,您将看到
itemstener
ActionListener
都是从同一个基础
EventObject
扩展而来的,而
getSource
实际上就是在这个基础上定义的。。。我不明白你的意思。。。你能补充一个答案或澄清一下吗?组合框是可选元素,对吗?所以在我看来,这个方法将返回发起事件的组合框,不是吗?我误解了这个方法吗?嗯,这其实是一个很好的观点,比
getSource
更不明显,我把它当作
getItem
-忽略我的愚蠢;)别担心:)这种事总是发生在我身上。另外,你是这里的传奇人物,所以我想确定我的话,因为英语不是我的母语,有时我会错过一些明显的东西。谢谢你!!