【发布时间】:2016-02-12 16:05:56
【问题描述】:
我是 JavaFX 的新手,我正在尝试制作棋盘格。我首先要制作一个正方形的网格窗格,其中填充基于随机颜色 数组。我不知道为什么,但方块并没有填满网格的其余部分。我还想使用约束来设置网格的高度和宽度。
int rowNum = 10;
int colNum = 10;
int gridHeight = 10;
int gridWidth = 10;
public void start(Stage primaryStage) {
GridPane grid = new GridPane();
//grid.getColumnConstraints().add(new ColumnConstraints(gridWidth));
//grid.getRowConstraints().add(new RowConstraints(gridHeight));
Random rand = new Random();
Color[] colors = {Color.BLACK, Color.BLUE, Color.GREEN, Color.RED};
int n = rand.nextInt(4)+1;
for(int row = 0; row < rowNum; row++){
for(int col = 0; col < colNum; col++){
Rectangle rec = new Rectangle();
rec.setWidth(2);
rec.setHeight(2);
rec.setFill(colors[n]);
GridPane.setRowIndex(rec, row);
GridPane.setColumnIndex(rec, col);
grid.getChildren().addAll(rec);
}
}
Scene scene = new Scene(grid, 350, 250);
primaryStage.setTitle("Grid");
primaryStage.setScene(scene);
primaryStage.show();
}
左上角只出现一个方块。 为什么会这样?
【问题讨论】:
-
所有矩形都使用相同的颜色。所以你有 100 个 2x2 矩形,但它们看起来就像一个 20x20 矩形......