1

我目前正在用 JavaFX 开发一个绘图应用程序以供娱乐。我目前正在将绘图面板的内容保存到图像中。应该保存在该图像中的所有节点都是一个组的子节点。我想使用场景快照方法,但我的问题是我不想对整个场景进行快照...

使用形状组创建新场景显然不是一种选择,因为一个组一次只能是一个场景图的一部分。因此,我需要一种方法来复制形状组的所有子对象,以便创建一个可以快照的新场景……有没有办法做到这一点?我应该继承 Group 类并创建一个克隆方法还是什么?我真的不知道如何继续......

4

2 回答 2

2

听起来你想要做的是对一个组进行快照。在这种情况下,请使用节点快照方法而不是场景快照方法。您不需要克隆场景图节点树来获取它的快照。

于 2013-06-01T17:37:28.217 回答
0

我想到了一些东西……我使用了一个扩展 Group 的 CustomShape 类,并给它一个抽象方法 getShapeCopy。我让这个方法为 CustomRectangle 类等返回一个 Rectangle(JavaFX 节点)。这非常有效!

于 2013-06-01T11:33:43.000 回答