我制作了一个单独的类来在JavaFX中设置网格。该类如下:
public class Grid {
GridPane gp = new GridPane(); //sets grid (10x10)
gp.setHgap(10);
gp.setVgap(10);
gp.setBorder(null);
gp.setPadding(new Insets(15,15,15,15));
int[][] shots = new int[10][10];
for(int i = 0; i<10; i++) {
for (int j = 0; j < 10; j++) {
Rectangle r = new Rectangle(40 , 40);
gp.add(r, j, i);
}
}
}
然后我有
Group root = new Group();
Grid g = new Grid();
root.getChildren().add(g);
但是它引发了以下...
列表类型中的方法add(Node)不适用于 参数(网格)
我知道Grid
不是Node
类型,因此无法添加它,但是我真的坚持应该更改以添加它。我尝试过
public class Grid extends GridPane{}
允许将对象添加到Main
中,但是,不接受添加到另一类的 gp GridPane
中的变量。
有什么建议吗?
答案 0 :(得分:0)
您试图将具有节点作为其数据成员的类的对象添加到组中。相反,您必须将节点本身添加为组的子级。 尝试这种方式:
Group root = new Group();
Grid g = new Grid();
root.getChildren().add(g.gp);