我在JavaFX中使用for循环和数组创建了一个Button of Button。 现在我想为按钮分配一个值。
这是我的代码:
int SIZE = 10;
int length = SIZE;
int width = SIZE;
GridPane root = new GridPane();
matrix = new Button[width][length];
matrix[0][0] = 1;
for(int y = 0; y < length; y++)
{
for(int x = 0; x < width; x++)
{
Random rand = new Random();
int rand1 = rand.nextInt(2);
matrix[x][y] = new Button(/*"(" + rand1 + ")"*/);
matrix[x][y].setText("(" + rand1 + ")");
matrix[x][y].setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Random Binary Matrix (JavaFX)");
}
});
root.add(matrix[x][y], y, x);
}
}
此部分的Eclipse错误: matrix [0] [0] = 1;
非常感谢你的帮助!
答案 0 :(得分:0)
你可以使用列表,我认为更适应:
// 1 dimension
List<Button> btns = new ArrayList<>(10);
// 2 dimensions
List<List<Button>> btns = new ArrayList<>(10);
btns.get(0).get(0).setText("Hi");
我没有尝试过:
for(List list: btns){
for(Button btn: (List<Button>) list){
//Edit for each button !
}
}