我在编程方面很陌生,但我需要为游戏Minesweeper编程。 基本上游戏正在运行,但有些部分根本无法运行。
第一个问题是旗帜。我的扫雷能够通过右键单击一个字段来设置标记,但每次我左键单击带有标记的字段时,该字段将覆盖该标记。
Field after a right click
Flagged field after a left click
有没有办法设置旗帜"绝对"或者最后还是什么?
这是代码:
@Override
public void mouseClicked(MouseEvent arg0) {
if (SwingUtilities.isRightMouseButton(arg0)) {
setFlag();
} else if (SwingUtilities.isLeftMouseButton(arg0)) {
checkMine();
}
public void setFlag() {
button.setEnabled(false);
button.setText(flag);
button.setBackground(Color.LIGHT_GRAY);
}
public void checkMine() {
button.setEnabled(false);
display();
check = false;
if (value == 0)
log.emptyCells();
if (value == -1)
log.fail();
if (value == -3)
log.lucky();
}
我希望有人可以帮助我。
坦克:)
答案 0 :(得分:0)
当您使用button
的方法时,您永远不会指定要禁用的按钮。我建议您在方法中添加JButton
参数,以便更改它们。
此外,check
布尔值永远不会被初始化为布尔值,除非它是您正在使用的实例变量,在这种情况下,您需要编辑帖子以包含实例变量。