确定按下了哪个按钮



我试图建立一个有很多按钮(JButton)/下拉项(JMenuItem)的GUI,当每个包含字母的按钮被按下时,相关的字母被添加到标签。

我无法确定哪个按钮被按下了。你能给我点建议,告诉我该怎么做吗?

代码:

 private void dodajCrko(java.awt.event.ActionEvent evt) {                           
    jlStatus.setText(jlStatus.getText() + evt.getSource()/* what to add here?*/);
}

我会使用getActionCommand()方法:

private void dodajCrko(java.awt.event.ActionEvent evt) {                           
    jlStatus.setText(jlStatus.getText() + actionEvent.getActionCommand());
}

我想你需要这个

((Button)actionEvent.getSource()).getLabel()

这将为您提供所单击按钮的标签。您需要键入将Source转换为Button,如(Button)actionEvent.getSource()

你的代码应该是
private void dodajCrko(java.awt.event.ActionEvent evt) {                           
    jlStatus.setText(jlStatus.getText() + 
    ((Button)actionEvent.getSource()).getLabel());
}

正如@Anto所说,如果你使用任何切换按钮,你应该使用actionEvent.getActionCommand(),因为命令字符串将识别预期的操作

我觉得这个效果更好。

private JButton button1;

那就用这个

    button1.addActionListener(new ActionListener()
    {
        public void actionPerformed(ActionEvent e)
        {
            System.out.println("Button 1 was presseed");
        }
    });

希望这对你有帮助,Luke

相关内容

  • 没有找到相关文章

最新更新