按ID查找元素没有结果

时间:2014-10-12 14:47:36

标签: javafx javafx-8

使用Scene Builder 2,我创建了一个具有以下结构的场景:

BorderPane - > SplitPane - > AnchroPane - > SplitPane - > AnchorBane。 (http://pastebin.com/7LTNh1Jv

第二个SplitPane中的AnchorPane具有ID workbench-anchor 。现在我尝试通过以下方式获取此AnchorPane的参考:

final BorderPane rootPane = loader.load();
final Node node = rootPane.lookup("#workbench-anchor");

node 始终为NULL。

有谁知道我做错了什么?

提前多多感谢!

1 个答案:

答案 0 :(得分:1)

在应用CSS之前,查找将不起作用,这通常发生在第一帧渲染上。您可以尝试在显示舞台后执行查找。您也可以通过调用

来强制执行此操作
rootPane.applyCSS();

在进行查找之前。

通常,查找不是查找场景图(imho)元素的非常强大的方法。在控制器类中进行任何初始化工作可能更好,使用@FXML注入来引用节点。