如何将节点的高度设置为固定值java fx场景构建器

时间:2017-02-01 01:07:03

标签: java javafx scenebuilder

我的根UI对象是VBox,第一个子菜单是菜单栏。菜单栏添加在场景构建器中。设置场景并显示舞台后,我调用此功能。

menuBar.setPrefHeight(40.0);

我运行我的程序,高度为40.然后我将一个AnchorPane添加到我的根VBox并且它仍然是40.如果我调整窗口大小或者如果我删除旧的AnchorPane并添加一个新的高度变为32。我可以阻止这种情况发生吗?

这是我的代码,它构造了一个构建AnchorPane的对象

private void render(){

    barHeight = menuBar.getHeight();

    boxWidth = vBox.getWidth();
    boxHeight = vBox.getHeight(); 

    barHeight = menuBar.getHeight();
    board = new Board(rc,rc,boxWidth,boxHeight-barHeight);
    //dimensions of AnchorPane based on values passes to contructor above
    board.build(); 

    addPane();

这是我将AnchorPane添加到VBox的代码

private void addPane(){
    anchorPane = board.getBoard();

    if(vBox.getChildren().size() == 2){
        vBox.getChildren().remove(1);
    }
    vBox.getChildren().add(anchorPane);

我也在使用ChangeListener接口,只要舞台的width或height属性发生变化,它就会重新渲染AnchorPane。我不相信这会造成任何问题。

0 个答案:

没有答案