将FXML文件添加到ControlsFX弹出窗口中

时间:2017-11-13 04:29:28

标签: java javafx fxml controlsfx

所以我是JavaFX的新手,从我观看过的所有教程和我编写过的应用程序来看,整个视图都是在FXML文件中创建的。

我遇到了ControlsFX,我试图在其中实现弹出功能。我的问题是;如何设置组件内的所有组件以从外部FXML文件加载?

这是我自己尝试的但是无法让它发挥作用:

    PopOver popOver = new PopOver();
    popOver.setArrowLocation(PopOver.ArrowLocation.RIGHT_CENTER);
    popOver.setContentNode(new Label("Test"));
    popOver.setAutoFix(true);
    popOver.setAutoHide(true);
    popOver.setHideOnEscape(true);
    popOver.setDetachable(false);

    Node content = null;

    FXMLLoader fxmlLoader = new FXMLLoader();
    content = (Parent) fxmlLoader.load(getClass().getResourceAsStream("new.fxml"));
    popOver.setContentNode(content);

    popOver.show(new_button);

1 个答案:

答案 0 :(得分:0)

好的,我想出了一个解决方案,以防万一它可能在将来帮助某人。

BorderPane p = FXMLLoader.load(getClass().getResource("new.fxml"));
popOver.setContentNode(p);
popOver.show(new_button);