Javafx 引用Gridpane中的文本字段

Javafx 引用Gridpane中的文本字段,javafx,textfield,gridpane,Javafx,Textfield,Gridpane,好的。所以给你们一些背景信息:我正在编写一个数独游戏,没有太多使用GUI,但做了很多研究 我创建了一个2 for循环,创建了一个9x9网格窗格,其中填充了文本字段,代码如下 GridPane grid = new GridPane(); for(int x =0; x < 9; x++){ for(int y= 0; y < 9; y++){ TextField textField = new TextField("0"); textFiel

好的。所以给你们一些背景信息:我正在编写一个数独游戏,没有太多使用GUI,但做了很多研究

我创建了一个2 for循环,创建了一个9x9网格窗格,其中填充了文本字段,代码如下

GridPane grid = new GridPane();

for(int x =0; x < 9; x++){
    for(int y= 0; y < 9; y++){
        TextField textField = new TextField("0");
        textField.setStyle("-fx-pref-width: 2em;");
        GridPane.setConstraints(textField, y, x);
        grid.getChildren().add(textField);
    }
}
GridPane grid=new GridPane();
对于(int x=0;x<9;x++){
对于(int y=0;y<9;y++){
TextField TextField=新的TextField(“0”);
textField.setStyle(“-fx pref width:2em;”);
设置约束(文本字段,y,x);
grid.getChildren().add(textField);
}
}
现在,我要做的是有一个清晰的方法,比如坐标 [2] [5]返回2d数组并与答题纸进行比较。我的问题是在网格窗格中指定坐标


致以最诚挚的问候。

将文本字段放入数组:

GridPane grid = new GridPane();
TextField[][] textFields = new TextField[9][9] ;

for(int x =0; x < 9; x++){
    for(int y= 0; y < 9; y++){
        TextField textField = new TextField("0");
        textField.setStyle("-fx-pref-width: 2em;");
        GridPane.setConstraints(textField, y, x);
        grid.getChildren().add(textField);
        textFields[x][y]=textField ;
    }
}
GridPane grid=new GridPane();
TextField[][]textFields=新的TextField[9][9];
对于(int x=0;x<9;x++){
对于(int y=0;y<9;y++){
TextField TextField=新的TextField(“0”);
textField.setStyle(“-fx pref width:2em;”);
设置约束(文本字段,y,x);
grid.getChildren().add(textField);
textFields[x][y]=textField;
}
}

然后,您可以使用
文本字段[x][y]访问任何元素
(x,y)
。getText()

将文本字段放入数组中:

GridPane grid = new GridPane();
TextField[][] textFields = new TextField[9][9] ;

for(int x =0; x < 9; x++){
    for(int y= 0; y < 9; y++){
        TextField textField = new TextField("0");
        textField.setStyle("-fx-pref-width: 2em;");
        GridPane.setConstraints(textField, y, x);
        grid.getChildren().add(textField);
        textFields[x][y]=textField ;
    }
}
GridPane grid=new GridPane();
TextField[][]textFields=新的TextField[9][9];
对于(int x=0;x<9;x++){
对于(int y=0;y<9;y++){
TextField TextField=新的TextField(“0”);
textField.setStyle(“-fx pref width:2em;”);
设置约束(文本字段,y,x);
grid.getChildren().add(textField);
textFields[x][y]=textField;
}
}
然后您可以使用
textFields[x][y]访问任何元素
(x,y)