java Netbeans IDE - 叠加图像(棋盘 - 棋子)

时间:2014-03-09 22:37:39

标签: java image swing netbeans

我正在尝试使用NetBeans IDE为GUI制作国际象棋游戏,但我不能让棋子停留在棋盘上方,当我尝试棋盘被推开时。我正在为两张图片使用标签。如何在不将棋盘作为背景的情况下让棋子保持在棋盘上方? (窗口将有棋盘和右侧的信息面板,如计时器和东西,所以我不想让棋盘图像成为整个框架的背景)

1 个答案:

答案 0 :(得分:2)

你可能会尝试一些事情。

你可以......

将棋子标签添加到棋盘标签上。这将允许您在单个单元格上“叠加”该块。这将要求您使用单元格的布局管理器,类似于GridBagLayout可能会这样做,因为它会自动将组件置于其父级空间中。

你可以......

使用像JLayeredPane这样的GridBagLayout,可以让你在另一个面板之上。

底层是JPanel,其中包含棋盘的每个单元格,顶层是透明的JPanel,其中包含所有棋子

这变得更加复杂,因为您需要设计一些方法来填充“碎片”图层的空白区域。

根据您的需要,这两个图层都会使用GridBagLayoutGridLayout ...

你可以....

使用单个容器和GridBagLayout。这将允许您同时向布局中的同一(虚拟)单元格添加两个组件。

这变得有点棘手,因为您需要管理组件的z深度,以确保将这些部件布置在电路板顶部。