JavaFX - ScrollPane / VBox - 自动缩小

时间:2016-05-05 02:48:21

标签: javafx autosize vbox

我正在为孩子们开发一个JavaFX应用程序来控制一个小机器人,孩子会通过Drag-n-Drops命令块定义命令。 目标区域是带有VBox的Scrollpane。

我想知道是否有任何方法可以使ScrollPane和VBox可自动恢复,因此当我向Green块添加一个节点时,它必须增长(aldeady doing),当我从Green块中删除一个节点时,它必须缩小

以下是代码:

rsvg-convert -f pdf -o out.pdf file1.svg file2.svg file3.svg

VBox与节点:
enter image description here

没有节点的VBox:
enter image description here

这是我的项目:GitHub - Programming Block

谢谢!

1 个答案:

答案 0 :(得分:1)

我不确定我是否理解这个问题。当我为VBoxScrollPane设置minHeight时,如下例所示,它适用于我。

 public void start(Stage primaryStage) {

        Button btnAdd = new Button("add");
        Button btnRemove = new Button("remove");
        VBox box = new VBox(btnAdd, btnRemove);
        box.setStyle("-fx-border-color:red");

        btnAdd.setOnAction(e -> box.getChildren().add(new Label("test")));

        btnRemove.setOnAction(e -> {
            int idx = box.getChildren().size();
            box.getChildren().remove(idx - 1);
        });

        ScrollPane scrollPane = new ScrollPane(box);
        scrollPane.setMinHeight(200);
        box.setMinHeight(200) ;

        BorderPane root = new BorderPane(scrollPane);

        primaryStage.setScene(new Scene(root, 300, 300));
        primaryStage.show();
    }