gpt4 book ai didi

java - 在 JavaFX 中显示圆数组

转载 作者:行者123 更新时间:2023-12-02 01:13:59 27 4
gpt4 key购买 nike

我正在尝试使用 JavaFX 中的数组创建棋盘图案。我对此很陌生,所以请耐心等待。

我目前有:

public class CircleArrayTest extends Application {

@Override
public void start(Stage primaryStage) {

Group root = new Group();

Scene scene = new Scene(root,800,800);
scene.setFill(Color.WHITE);

Circle[] circArray = new Circle[10];

for(int i = 0; i<10; i++) {
circArray[i].setRadius(20);
circArray[i].setCenterX(20*i);
circArray[i].setCenterY(30);
circArray[i].setFill(Color.BLACK);

}

root.getChildren().addAll(circArray[]);
primaryStage.setScene(scene);
primaryStage.show();
}

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
launch(args);
}
}

我确信我正在尝试这样做完全错误,但我找不到任何资源来提供帮助。最终目标是拥有一个类似于棋盘的 8 x 8 网格,如果我能弄清楚如何获得 child ,我应该没问题。

最佳答案

有一些错误需要首先修复,正如 Vince 所说,从 addAll(circArray[]) 中删除括号。所以它看起来像这样 addAll(circArray)

下一步是确保每个圆圈都已创建,是的,您创建了一个数组,但它只是一个空数组,因此您需要添加 circArray[i] = new Circle();确保每个索引都有一个圆圈

public class Main extends Application {

@Override
public void start(Stage primaryStage) {
Group root = new Group();

Scene scene = new Scene(root,800,800);
scene.setFill(Color.WHITE);

Circle[] circArray = new Circle[10];

for(int i = 0; i<10; i++) {
circArray[i] = new Circle();//Adding this line to prevent NPE on circArray[i]
circArray[i].setRadius(20);
circArray[i].setCenterX(20*i);
circArray[i].setCenterY(30);
circArray[i].setFill(Color.BLACK);
}

root.getChildren().addAll(circArray);//removed brackets from addAll(circArray[])

primaryStage.setScene(scene);
primaryStage.show();
}

}

关于java - 在 JavaFX 中显示圆数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58935810/

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