gpt4 book ai didi

java - 为gridlayout中的JButton添加点击事件-JAVA

转载 作者:太空宇宙 更新时间:2023-11-04 06:27:16 25 4
gpt4 key购买 nike

更新:

感谢一些乐于助人的人,已经找到了解决方案。

我现在正在创建如下所示的按钮,并添加事件:

for(String s: new String[]{"7", "8", "9", "4", "5", "6", "1", "2","3", "0", ".", "=" }) {// change here, as per your need
JButton btn = new JButton(s);
numButtonPanel.add(btn);
btn.addActionListener(new EventListener());
}

注意:

EventListener 是一个已创建的类(向下滚动到答案,您可以在那里看到该类)

我正在使用 JAVA Swing 库创建一个计算器,目前我在网格布局内有数字按钮。

我的问题是,根据下面的代码,我如何将点击事件添加到我的 JButtons 中?

我的 JButton 示例:

numButtonPanel.add(new JButton("8"));
numButtonPanel.add(new JButton("9"));
numButtonPanel.add(new JButton("4"));
numButtonPanel.add(new JButton("5"));
numButtonPanel.add(new JButton("6"));

如您所见,我正在网格布局中创建它们...我不仅仅是添加已经创建的 JButton。

如果有人能提供帮助,那就太好了!

谢谢!

最佳答案

看看How to Use Actions ,它们是自配置和自包含的操作...

public class NumberAction extends AbstractAction {
private int value;
public NumberAction(int value) {
put(NAME, Integer.toString(value));
}

@Override
public void actionPerformed(ActionEvent evt) {
// Do some work here...
}
}

然后只需将它们应用到按钮

numButtonPanel.add(new JButton(new NumberAction(8)));
numButtonPanel.add(new JButton(new NumberAction(9)));
numButtonPanel.add(new JButton(new NumberAction(4)));
numButtonPanel.add(new JButton(new NumberAction(5)));
numButtonPanel.add(new JButton(new NumberAction(6)));

关于java - 为gridlayout中的JButton添加点击事件-JAVA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26628033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com