有没有办法看到在ActionListener中修改了2个JComboBox中的哪一个?

时间:2013-10-29 22:55:11

标签: java swing actionlistener jcombobox

我的应用程序中有2个JComboBox,当我更改1个组合框的值时,除了更改其他组合框之外,还需要做其他事情。 当我改变第一个时,应该修改第二个的值,但是当我改变第二个时,它应该什么都不做。 那么有没有办法看到哪个组合框已被更改?

谢谢!

3 个答案:

答案 0 :(得分:3)

当然,您应该检查event.getSource()以找到您感兴趣的那个:

@Override
public void actionPerformed(ActionEvent event) {
    Object src = event.getSource();
    ...
}

答案 1 :(得分:3)

您应该能够将它们与ActionEvent的getSource()对象区分开来。

或者,您可以使用setActionCommand()方法和getActionCommand()

设置不同的“操作命令”

答案 2 :(得分:3)

您还可以直接将匿名actionListener添加到需要侦听的组合框中:

comboOne.addActionListener(new ActionListener() 
{
    public void actionPerformed(ActionEvent e) 
    {
        // make changes to comboTwo
    }
});