gpt4 book ai didi

java - 如何允许元素的大小(例如,HBox)在其所属的舞台之外增长(溢出)

转载 作者:行者123 更新时间:2023-11-30 03:20:48 25 4
gpt4 key购买 nike

是否可以允许元素的大小(例如,HBox)在其所属的舞台之外增长(溢出),同时仍然可见,如果可以,我该如何处理?

最佳答案

将 Pane 包装在一个组中,该组不能根据场景调整大小。在以下示例中,如果注释掉当前的 root.setCenter(...) 并取消注释刚刚添加 hbox 的那个,则 HBox 将被限制为场景的大小(因此当您添加更多标签时,标签将被挤压得越来越小)。

当包裹在Group中时,水平盒将无限增长。

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class GrowingHBoxTest extends Application {

int count = 0 ;

@Override
public void start(Stage primaryStage) {
HBox hbox = new HBox();
Button button = new Button("New label");
button.setOnAction(e -> hbox.getChildren().add(new Label("Label "+(++count))));

hbox.setMaxWidth(Double.MAX_VALUE);

BorderPane root = new BorderPane();
root.setBottom(button);

// will not grow outside of scene bounds:
root.setCenter(hbox);

// will grow outside of scene bounds:
// root.setCenter(new Group(hbox));

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

public static void main(String[] args) {
launch(args);
}
}

关于java - 如何允许元素的大小(例如,HBox)在其所属的舞台之外增长(溢出),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31387703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com