小编典典

使用动作侦听器获取JButton的文本

java

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

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

阅读 259

收藏
2020-11-30

共1个答案

小编典典

您可以使用一个不错的简单技巧…

@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();
    }

}
2020-11-30