try {
for (int i = 0; i < 148; i++) {
zx = zx+1;
if (zx==15) {
zx = 0;
zy = zy+1;
gbc.gridheight = zy;
} // end of if
gbc.gridwidth = zx;
JButton b = new JButton(champs[i]);
cp.add(b, gbc);
b.setName(champs[i]);
if (b.getModel().isPressed()) {
System.out.println(b);
} // end of if
}
} catch(Exception e) {
System.out.println(e);
}
我正在尝试对148个JButton进行操作/响应,如果它们被按下,但似乎我使用了错误的if子句。布局完全正常,所有按钮均以正确的名称显示在正确的位置,但是我无法向其添加操作。我仍然是Java初学者,因此请记住这一点。任何帮助表示赞赏。预先感谢。
您需要动作监听器。
一旦创建并初始化了JButton,您需要向其添加一个事件监听器。如果使用的是GUI构建器,则可以进入设计模式并右键单击“按钮”,然后转到“执行的动作/执行的动作”,它将为您创建方法,您可以在此处输入代码。
如果正在编写swing应用程序,则可以初始化按钮,然后手动向其添加事件侦听器。例如:
private JButton button = new JButton("Button");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//insert code here
}
});