Javafx 2 在Javafx中创建gridPane

Javafx 2 在Javafx中创建gridPane,javafx-2,javafx,Javafx 2,Javafx,我是JavaFx新手,我在FXMl中创建了两个gridPane,我想用JavaFx做同样的事情 我想创建一个扩展GridPane的类,所以当我调用我的类时,我将得到与fxml中相同的结果 PS:如果您使用的是SceneBuilder,请检查网格线是否可见,以便可以看到所有网格窗格 多谢各位 <GridPane layoutX="138.0" layoutY="72.0"> <children> <Label text="01" GridPane.

我是JavaFx新手,我在FXMl中创建了两个gridPane,我想用JavaFx做同样的事情

我想创建一个扩展GridPane的类,所以当我调用我的类时,我将得到与fxml中相同的结果 PS:如果您使用的是SceneBuilder,请检查网格线是否可见,以便可以看到所有网格窗格 多谢各位

  <GridPane layoutX="138.0" layoutY="72.0">
    <children>
    <Label text="01" GridPane.columnIndex="1" GridPane.rowIndex="0" />

    <Label text="01" GridPane.columnIndex="2" GridPane.rowIndex="0" />

    <Label text="01" GridPane.columnIndex="3" GridPane.rowIndex="0" />

    <Label text="01" GridPane.columnIndex="4" GridPane.rowIndex="0" />

    <Label text="01" GridPane.columnIndex="0" GridPane.rowIndex="0" />

  </children>

  <columnConstraints>
    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

  </columnConstraints>

  <rowConstraints>

    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />

  </rowConstraints>

</GridPane>

<GridPane layoutX="38.0" layoutY="102.0">

  <children>

    <Label prefWidth="74.0" text="Label" GridPane.columnIndex="0" GridPane.rowIndex="0" />

  </children>

  <columnConstraints>

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="25.0" />

  </columnConstraints>

  <rowConstraints>

    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />

    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />

  </rowConstraints>

</GridPane>

这里有一个例程,我用它创建了一个网格窗格x by y,并将其添加到名为grill的父窗格中(该窗格由FXML创建)

public GridPane dessinegrill(int x,int y){
((窗格)Main.root.lookup(#grill”).getChildren().clear();
GridPane gp=新的GridPane();
x+=2;
ColumnConstraints column=新ColumnConstraints();
列.setPercentWidth((1.0f/(float)x))*100.0f);

对于(inti=1;i)为什么不加载fxml来显示gridpane?我需要在Javafx中完成
public GridPane DessineGrille(int x, int y) {
    ((Pane) Main.root.lookup("#grille")).getChildren().clear();
    GridPane gp = new GridPane();
    x += 2;
    ColumnConstraints column = new ColumnConstraints();
    column.setPercentWidth((1.0f/((float) x))*100.0f);
    for (int i = 1; i <= x; i++) {
        gp.getColumnConstraints().add(column);
    }
    y += 2;
    RowConstraints line = new RowConstraints();
    line.setPercentHeight((1.0f/((float) y))*100.0f);
    for (int i = 1; i <= y; i++) {
        gp.getRowConstraints().add(line);
    }
    gp.setGridLinesVisible(true);
    gp.setHgap(10);
    gp.setVgap(10);
    Light.Distant light = new Light.Distant();
    light.setAzimuth(-135.0);

    Lighting lighting = new Lighting();
    lighting.setLight(light);
    lighting.setSurfaceScale(5.0);
    gp.setEffect(lighting);
    gp.setMinSize(((Pane) Main.root.lookup("#grille")).getWidth(), ((Pane) Main.root.lookup("#grille")).getHeight());
    ((Pane) Main.root.lookup("#grille")).getChildren().add(gp);
    return gp;

}