我正在使用JavaFX的幻灯片菜单,在其定义中,我一直在使用getScene()方法来引用要添加节点的场景的高度和宽度。

问题在于幻灯片菜单是在场景定义之前定义的,并返回NullPointerException

我认为解决此问题的方法是使用侦听器创建一个BooleanProperty,每当属性值更改时,就会检查它是true还是false,执行涉及到调用的代码行是否分别使用getScene()方法。

我怎样才能做到这一点?我以为我可以这样说

BooleanProperty hasScene = new SimpleBooleanProperty();
hasScene.set(getScene());
hasScene.set(Boolean.valueOf(getScene()));
hasScene.set((boolean) getScene());


但无法从Scene强制转换为Boolean

有任何想法吗?提前致谢。

最佳答案

hasScene.bind(sceneProperty().isNotNull());

关于java - BooleanProperty,其值取决于是否将节点添加到场景中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38154553/

10-09 05:22