这是我正在努力学习的实验室,代码正在制作一个刽子手游戏,当"大脑"程序说游戏结束时,所有字母按钮都应该被禁用.
相关代码部分:
按钮:
class ActionButton extends JButton implements ActionListener{
private String name;
private char t;
public ActionButton(String s){
super(s);
name = s;
t = name.charAt(0);
}
@Override
public void actionPerformed(ActionEvent e) {
ido.newLetter(t);
this.setEnabled(false);
LovesMePanel.this.update();
}
}
Run Code Online (Sandbox Code Playgroud)
更新方法:
public void update(){
answers = ido.getAnswer();
flower.setTriesLeft(ido.getTriesLeft());
progress.setText(answers);
if(ido.gameOver()){
// This is where I need to deactivate the buttons
if(ido.hasWon()){
}
}
else if(triesLeft == 0){
}
}
Run Code Online (Sandbox Code Playgroud)
这些按钮都是在LoveMePanel的循环中创建的,它包含所有其他面板.有没有办法在游戏结束时全部引用它们或禁用它们?如果没有,我应该如何更改我的代码,以便可以这样做?
如果你把按钮放在一个Collection,你可以迭代它们并一直禁用它们.也就是说,
for (JButton b : myButtons) {
b.setEnabled(false)
}
Run Code Online (Sandbox Code Playgroud)
如果没有,您有26个禁用语句要写.
| 归档时间: |
|
| 查看次数: |
2791 次 |
| 最近记录: |