当组件添加到它时,JPanel自行移动

时间:2015-02-17 09:59:58

标签: java swing user-interface jpanel layout-manager

我是使用Java构建GUI的新手,我第一次尝试创建一个Minesweeper克隆。一切都很顺利,直到在运行时生成场地砖。我有一个字段JPanel(FlowLayout),它足够大,可以包含16 * 16个瓷砖,每个瓷砖本身就是一个JPanel(CardLayout由一个标签和一个按钮组成)。我设法让瓷砖正确显示,但我遇到了一个小问题。在添加第13个图块之后,每个下一个图块将整个字段面板与其上方的一些组件一起向右移动,这些组件不是字段面板本身的一部分。如果我添加所有256个图块,则整个字段会从屏幕上移开,因此上面的组件也是如此。

造成这种情况的原因是什么?如何解决?

以下是问题和表单设计的一些屏幕截图:

Screenshots

1 个答案:

答案 0 :(得分:2)

你有一个字段JPanel(FlowLayout),它足够大,可以包含16 * 16个矿区。将此布局更改为 GridLayout 。您可以在此处查看参考:http://docs.oracle.com/javase/7/docs/api/java/awt/GridLayout.html