【发布时间】:2016-04-07 03:57:26
【问题描述】:
基本上我正在尝试制作 Lightout 游戏!我想做一个 JButtons 数组 所以我可以跟踪每个按钮的索引(每个按钮的状态取决于其他按钮的状态)
目前为止:
JPanel panel = new JPanel();
setTitle("Memory");
setContentPane(panel);
setPreferredSize(new Dimension(300, 300));
panel.setLayout(new GridLayout(5,5));
JButton[][] buttons = new JButton[5][5] ;
for (int i = 0; i < 5; i++)
for (int j = 0; j < 5; j++) {
buttons[i][j] = new JButton();
setDefaultCloseOperation(EXIT_ON_CLOSE);
pack();
setVisible(true);
}
但这并不符合我的预期。当我运行它时,我得到了一个很大的空白 JFrame。任何帮助将不胜感激
【问题讨论】:
-
你在哪里将所有这些
buttons添加到代码中的框架中 -
我的印象是buttons[i][j] = new JButton();是添加按钮的方法吗?我真的很抱歉,我在这方面有点菜鸟
-
@Elchapo 你的 for 循环不好。你调用 pack 和 setvisible 需要多少时间
-
@FastSnail 谢谢!我已经修好了
-
@Elchapo 这就是为什么不鼓励在 for 循环中省略大括号的原因。有一个更高的变化会犯错误。所以使用大括号来包裹 if 块