为按钮数组分配索引?

时间:2016-11-27 14:59:39

标签: arrays for-loop button javafx

我在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;

非常感谢你的帮助!

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 !

  }

}