我正在使用JavaFX for UI。如何将Vbox布局的大小设置为窗口大小? 我尝试了以下代码,但无法查看在vbox中添加的组件。
VBox vbox = new VBox();
vbox.setPadding(new Insets(10, 10, 10, 10));
vbox.setSpacing(10);
答案 0 :(得分:6)
这会将舞台宽度的80%设置为VBOX:
Stage window = PrimaryStage;
VBox layout = new VBox(10);
//multiply to set size (0.80 is like 80% of the window)
layout.prefWidthProperty().bind(window.widthProperty().multiply(0.80));
答案 1 :(得分:-3)
primaryStage.setScene(new Scene(vBox, 200, 200));
vBox.getChildren().add(label);
试试这个示例:
package javafxapplication1;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class JavaFXApplication1 extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
VBox vBox = new VBox();
vBox.setStyle("-fx-background-color: #ABABAB");
Label label = new Label("Test");
vBox.getChildren().add(label); //Add new node to vBox
primaryStage.setScene(new Scene(vBox, 200, 200)); //Add vbox to scene
primaryStage.show();
}
}
答案 2 :(得分:-5)
您可以使用:
VBox vbox = new VBox();
vbox.setPrefWidth(400);// prefWidth
vbox.setPrefHeight(500);// prefHeight
或
VBox vbox = new VBox();
vbox.setPrefSize(400, 500);// prefWidth, prefHeight
了解更多here!