我正在尝试构建一个扫雷程序,并且我目前有可单击的按钮,其中显示了正确数量的地雷。我想知道单击地雷时如何显示所有按钮。我试图在不将所有字段都设为静态的情况下执行此操作,因为我希望一旦完成就可以更改游戏。
public class Minesweeper {
/*
The following code initializes the 2d array's fields for
positions, with its rows, columns, and # of mines.
*/
ArrayList<Integer> minenums = new ArrayList<Integer>();
int mineNum;
int rows;
int cols;
int[][] grid;
static boolean gameOn = true;
static Minesweeper sweep;
Button[][] buttons;
public void exposeAll() {
if(gameOn = false){
for(int i =0; i < rows; i++){
for(int j = 0; j < cols; j++){
// buttons[i][j].expose();
}
}
}
}
}
public class MouseWhisperer implements MouseListener {
public void mousePressed(MouseEvent me) {
int value;
Button click;
click = (Button)me.getSource();
click.expose();
value = ((Button)click).getvalue();
if (value == -1) {
for(int i = 0; i < Minesweeper.sweep.grid.length; i++){
for(int j = 0; j < Minesweeper.sweep.grid[0].length; j++){
Minesweeper.sweep.buttons[i][j].expose();
}
}
}
}
)
没有任何错误消息,单击地雷(值= -1)时该方法不起作用。