使用Action Listener获取JButton的文本

时间:2015-12-15 22:52:25

标签: java swing jbutton actionlistener

是否有getText导致代码中显示的动作侦听器内部error: cannot find symbol的原因?如果有,我将如何解决此错误?

class openNewPaneActionListener implements ActionListener
{
    @Override
    public void actionPerformed(ActionEvent e)
    {
        String butSrcTxt = e.getSource().getText();
    }
}

1 个答案:

答案 0 :(得分:6)

你可以使用一个很好的简单技巧......

@Override
public void actionPerformed(ActionEvent e)
{
    String butSrcTxt = e.getActionCommand();
}

如果您没有为按钮指定actionCommand,则会改为使用该按钮的text

现在,如果您确定为按钮指定了actionCommand属性并且您仍然想知道文本(这对我来说似乎很奇怪),您可以使用更像...

@Override
public void actionPerformed(ActionEvent e)
{
    Object source = e.getSource();
    if (source instanceof JButton) {
        JButton btn = (JButton)source;
        String butSrcTxt = btn.getText();
    }

}