现在我需要编写一个 8 拼图游戏,看起来 [像这样]
老师让我们写三个不同的类,分别是 Piece.java、EightPuzzle.java 和 EightPuzzlePanel.java。如您所见,Piece.java 代表这八个拼图板上的每个单独的块,如“1”、“2”;EightPuzzle.java 代表了包含这 9 个棋子/按钮的游戏板。EightPuzzlePanel.java 是 GUI 的东西。
所以我的问题是,既然我们需要创建一个 Piece[][]piece = new Piece[][],一个 2D 数组,我们还需要将这些棋子排列在棋盘上。我想我可以创建 9 个 JButtons 并将 2D 数组与 9 个 JButtons 链接(或者有更好的方法来对 2D 数组进行排序),但我不知道该怎么做。
此外,按钮需要由鼠标和键盘控制。这对我来说是另一个挑战。