Javafx节点只能在一个组中?

Javafx节点只能在一个组中?,javafx,Javafx,我不确定这是否是一个bug,或者只是我的JavaFX程序,但我正在尝试将节点添加到几个组中(只有一个组添加到场景中),遇到了一个奇怪的情况,即当我将节点添加到另一个组中时,该节点将自动从上一个组中移除 我找不到任何关于对象只能属于一个组的文档,所以我想知道这是一个bug还是应该是一个bug?我希望使用多个组来收集不同分组中的项目,这样我就可以在开/关的基础上对整个组应用高级效果,如MouseTransparency、不透明性等,而不是在一些子对象已经禁用了MouseTransparency之类的

我不确定这是否是一个bug,或者只是我的JavaFX程序,但我正在尝试将节点添加到几个组中(只有一个组添加到场景中),遇到了一个奇怪的情况,即当我将节点添加到另一个组中时,该节点将自动从上一个组中移除

我找不到任何关于对象只能属于一个组的文档,所以我想知道这是一个bug还是应该是一个bug?我希望使用多个组来收集不同分组中的项目,这样我就可以在开/关的基础上对整个组应用高级效果,如MouseTransparency、不透明性等,而不是在一些子对象已经禁用了MouseTransparency之类的内容的列表中迭代项目(因此,我不想为那些原本不具备MouseTransparency的项目重新启用它——通过将它们添加到组中,这项功能非常方便)

我注意到,您可以将组作为子组添加到其他组中。我已尝试通过将组嵌套在主视觉显示组下来解决我的问题,但不得不放弃,因为如果它们包含在子组中,我无法对所有整体进行比较排序,因为我只能在子组中排序或对组进行排序作为主组中的组,而不是对所有子组中的所有节点进行排序

谢谢

请参阅文档:

如果程序将子节点添加到父节点(包括组、区域等),并且该节点已经是其他父节点的子节点或场景的根节点,则该节点将自动(静默)从其前父节点中移除


我的猜测是,这是
的一个“未记录的副作用”(编辑:显然是有记录的。请参阅jewelsea的答案),因为它不是用来做你想让它做的事情的。对于你声明的一些目标(例如不透明度),你可以使用CSS伪类。对于其他目标(如鼠标透明度)你不能,但话说回来-我不相信这可以通过场景外图形组在概念上实现,因为它是一个严格的UI相关…在文档中的几个地方,例如,并且声明“一个节点最多可以在场景图中出现一次”。