如何在顶部使用MenuBar在多个anchorPanes之间切换?

时间:2017-09-06 10:59:55

标签: java user-interface javafx

我是UILayoutFittingExpandedSize的新用户,我需要使用JavaFX在多个Anchor Panes之间切换,因此当{&#}}时,​​MenuBar需要保持最佳状态39; m在这些Anchor窗格之间切换,我使用MenuBar生成Scene Builder文件,但不知道如何在不为每个Anchor窗格创建多个.FXML的情况下执行此操作

我的问题是如何以简单的方式做到这一点?因为我已经准备好使用Anchor Panes,所以我需要的是在这些Anchor窗格之上共享菜单栏的方法。

1 个答案:

答案 0 :(得分:0)

正如James评论的那样,要执行此操作,您需要在其顶部使用带有MenuBar的borderPane,并使用setCenter()上的BoderPane方法在其中设置Anchor窗格,像这样:

    @FXML
    private BorderPane borderPane;

    private AnchorPane achor1;
    private AnchorPane achor2;

    @Override
    public void initialize(URL url, ResourceBundle rb) {
        try {
            // TODO
            achor1 = FXMLLoader.load(getClass().getResource(("/Views/anchor1.fxml")));
            achor2 = FXMLLoader.load(getClass().getResource("/Views/anchor2.fxml"));

        } catch (IOException ex) {
            Logger.getLogger(CrechHomeController.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    @FXML
    public void action1() throws IOException {
        // anchor1

        borderPane.setCenter(achor1);

    }

    @FXML
    public void action2() {
        //anchor2 

        borderPane.setCenter(achor2);
    }