我使用git进行项目,其中几台机器的编码可能不同。

如果我设置这个:

private JButton translationButton1 = new JButton("←");
translationButton1.addActionListener(this);


然后我设置监听器:

@Override
    public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
    }


我知道可以通过使用e.getActionCommand()来获取“←”,但是我担心如果有人使用与我的编码不同的编码(例如Cp1252),我不确定是否会获得“←”。

是否可以在actionPerformed methodif(???.equals("translationButton1"))中获取按钮的名称? (我不想使用anonymous inner type,因为我要设置几个actionListener)

谢谢

最佳答案

否,但是您可以设置一个动作命令:

translationButton1.setActionCommand("translationButton1");


然后检查命令:

public void actionPerformed(ActionEvent ae) {
    if (ae.getActionCommand.equals("translationButton1") {
        // do something
    }
}

08-18 14:44