【发布时间】:2018-04-23 15:27:23
【问题描述】:
我目前正在为国际象棋游戏创建 GUI。这是大学作业。目前,我们已经完成了引擎。 因此,对于电路板,我使用以下代码创建了一个二维 JButton 数组。
public class GUI extends JFrame implements ActionListener {
private JPanel gameBoard;
private JButton[][] board = new JButton[4][4];
gameBoard = new JPanel();
add(board);
gameBoard.setLayout(new GridLayout(7, 6));
gameBoard.setBounds(400, 30, 700, 700);
board = new JButton[4][4]
for(int i = 0;i<4;i++) {
for(int j = 0;j < 4;j++) {
board[i][j] = new JButton();
gameBoard.add(board[i][j]);
}
}
}
我是一个初学者,所以如果这段代码给你带来了一场噩梦,我深表歉意哈哈,但如果有人照原样接受我的实现并告诉我如何从引擎中添加一个实际的部分,我会很高兴。引擎自行组装零件并创建自己的板。我还在我的 GUI 中初始化了一个新游戏,所以我可以使用我的引擎方法而不是 getsPieces 等。我的问题是,如何将 Piece 类型的对象附加到 JButton?谢谢!我也愿意提供有关如何改进我的问题的提示,谢谢。
【问题讨论】:
-
让您的 Piece 扩展 JButton 类,然后让您的电路板成为 Piece 的集合而不是 JButtons
-
@RAZ_Muh_Taz 不能那样做,Milestone 说我不能碰引擎,但要创造别的东西。引擎包含一块棋子板,但我需要将这些棋子连接到按钮板上,以便实现运动。
标签: java user-interface chess