JavaFX,在StackPane中添加图像

时间:2015-02-05 20:00:56

标签: javafx

我坚持在这个阶段,如何将3个塔添加到StackPane以及如何仅使用没有Scene Builder的JavaFX代码移动窗格内的砖块(例如1-2-3)?我会很感激任何答案!

图像:

game image

1 个答案:

答案 0 :(得分:4)

我的建议:

你创建了一个班级" Tower"它扩展了类Pane并包含一个磁盘列表。该课程有一个方法"接受"返回布尔值取决于你是否可以放置磁盘。

创建Tower类的3个实例。

然后你创建一个类"磁盘"它扩展了类Rectangle。创建8个不同宽度的实例,并将它们添加到第一个塔,即塔类列表。

每个磁盘都将使用Drag nodes like in a patience/Klondike card game中所述的mouselistener。该机制与您的需求非常相似。

在鼠标监听器的鼠标处理程序中,检查磁盘是否位于塔顶,因此是否可以拖动它。

在鼠标监听器的鼠标释放处理程序中,您只需检查磁盘是否与给定塔相交(请参阅boundsInParentintersects)。如果确实如此,并且accept方法返回true,则将其删除。如果accept方法返回false,则让它飞回原来的位置。

当Tower拥有所有磁盘时,您已完成。

基本上就是这样。

哦,不要使用StackPane,而是使用Pane。而且你不需要图像。您显示的图片只能由矩形创建。