我正在为 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/