FlowPane
流式布局,沿着一个方向排列组件,到末尾重新换行或者换列排列。
与HBox和Vbox不同的是FlowPane会保证将所有组件完整展现出来。
代码
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.geometry.Orientation;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.FlowPane;
import javafx.scene.text.Font;
import javafx.stage.Stage;
public class TestFlowPane extends Application{
public static void main(String[] args) {
launch();
}
public void start(Stage primaryStage) throws Exception {
Button button=new Button ("button");
FlowPane flowPane=new FlowPane();
flowPane.getChildren().add(button);
flowPane.getChildren().add(new Button ("button1"));
flowPane.getChildren().add(new Button ("button2"));
flowPane.getChildren().add(new Button ("button3"));
flowPane.getChildren().add(new Button ("button4"));
flowPane.getChildren().add(new Button ("button5"));
flowPane.getChildren().add(new Button ("button6"));
flowPane.setStyle("-fx-background-color:#98FB98");
Scene scene=new Scene(flowPane);
primaryStage.setScene(scene);
primaryStage.setWidth(300);
primaryStage.setHeight(300);
primaryStage.show();
}
}
默认是水平方向排列
//设置外边距
flowPane.setPadding(new Insets(10));
//水平间距
flowPane.setHgap(10);
//垂直间距
flowPane.setVgap(10);
//设置布局方向
//按垂直方向
flowPane.setOrientation(Orientation.VERTICAL);