gpt4 book ai didi

java - .getChildren().add() 需要一个节点并且无法添加我的对象

转载 作者:行者123 更新时间:2023-12-02 05:42:07 27 4
gpt4 key购买 nike

我创建了一个单独的类来在 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);

但它会抛出以下内容...

The method add(Node) in the type List is not applicable for the arguments (Grid)

我知道 Grid 不是 Node 类型,因此无法添加它,但我真的很困惑应该更改什么来添加它。我试过了

public class Grid extends GridPane{}

这允许将对象添加到 Main 中,但是,它不会将变量添加到 gp GridPane 中另一个类。

有什么建议吗?

最佳答案

您试图将一个类的对象(其数据成员为节点)添加到组中。相反,您必须将节点本身添加为组的子节点。试试这个方法:

Group root = new Group();
Grid g = new Grid();
root.getChildren().add(g.gp);

关于java - .getChildren().add() 需要一个节点并且无法添加我的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56127728/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com