我想添加一个网格布局,每行有不同的单元格。至于现在,我只能添加或删除行或列,我想询问是否可以在特定行或列中添加单元格。
您可以将每列设为1列GridPane。每列可以包含任意数量的行。将所有这些列放在另一个1行GridPane中:
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
public class FxTest extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
GridPane grid = new GridPane();
grid.setPadding(new Insets(5));
for (int i= 0; i< 5 ; i++){
GridPane column = makeColumn(3+i);
grid.add(column, i, 0);
}
Scene scene = new Scene(new Group(grid));
primaryStage.setScene(scene);
primaryStage.sizeToScene();
primaryStage.show();
}
private GridPane makeColumn(int columns) {
GridPane column = new GridPane();
column.setPadding(new Insets(2));
column.setGridLinesVisible(true);
for(int i = 0; i < columns; i++){
column.add(new Label(" "+i +" "), 0, i);
}
return column;
}
public static void main(String[] args) {
launch(null);
}
}