繁体   English   中英

添加组件时,Javafx阶段不会调整大小

[英]Javafx stage does not resize when components are added

所以我有这个应用程序获取一些数据并显示图表!

当我启动程序时,不会创建图表数据和折线图,因此我的程序如下所示:

在此输入图像描述

然后当我按下“Hent data”按钮时,我的线图被创建并添加到borderpane的中心,这使得gui看起来像这样: 在此输入图像描述

如您所见,应用程序阶段的大小不适合所有组件。

但是,如果我通过创建随机图形(而不是更改大小)来启动程序,程序将如下所示:

在此输入图像描述

在所有示例中,我的主要阶段代码如下所示:

public void start(Stage primaryStage) throws Exception {
    this.primaryStage = primaryStage;
    bp = new BorderPane();
    bp.setTop(createTopPane());
    Group root = new Group();
    root.getChildren().add(bp);
    bp.setCenter(createCenter());
    AnchorPane leftPane = new AnchorPane();

    leftPane.setPrefWidth(20);
    Separator vSeparator = new Separator(Orientation.VERTICAL);
    bp.setRight(leftPane);
    Scene scene = new Scene(root);
    scene.getStylesheets().addAll("test.css", "calendarstyle.css");
    primaryStage.setScene(scene);
    primaryStage.setMinHeight(500);
    primaryStage.setMinWidth(527);
    primaryStage.show();
}

即使图形尚未创建,我如何确保舞台保持适合图形的大小?

请注意,当我单击按钮时,我已经尝试更改primaryStage大小,但这并没有解决问题

使用AnchorPane.setLeftAnchor(javaFxNode, 0.0); AnchorPane.setRightAnchor(javaFxNode, 0.0); 静态方法。 两者中的值均为0,应将图表的两侧“粘贴”到其容器中。 当然,您也可以使用setTopAnchorsetBottomAnchor来处理相同的高度问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM