如果您只有一个按钮,我非常了解如何操作,但对于计算机科学项目,我正在制作一个基诺游戏GUI。为了使JButtons我像这样做了一个for循环:
for(int i=1 ; i <= 80; i++)
{
num.add(1) ;
btn = new JButton(String.valueOf(i)) ;
btn.setBackground(Color.BLUE);
btn.setForeground(Color.YELLOW);
btn.setActionCommand(String.valueOf(i));
btn.addActionListener(new ButtonHandler());
panel.add(btn);
}
public class ButtonHandler implements ActionListener {
@Override
public void actionPerformed(ActionEvent event) {
//Button Code if I click one button it goes here. I have set ID's via ActionCommand
}
}
https://i.gyazo.com/637f74422de5f4bf6e52155dcdfbd482.png [JButton输出]
所以我想要做的是,当我点击一个特定的数字时,它会变成红色,这表示它已被点击。要做到这一点,我是否必须定义EACH按钮?或者我可以通过这种方式调整一个按钮!任何信息都将非常感谢!
答案 0 :(得分:1)
如果你想在点击后变红(并保持红色),你可以将它添加到ButtonHandler
public class ButtonHandler implements ActionListener {
@Override
public void actionPerformed(ActionEvent event) {
JButton b = (JButton)event.getSource();
b.setBackground(Color.RED);
}
//Button Code if I click one button it goes here. I have set ID's via ActionCommand
}