【发布时间】:2020-12-07 07:15:42
【问题描述】:
我已经构建了一个 ImageView 的二维数组,并且我希望能够在单击它时打印出 ImageView 的索引(并使用该信息来更改图片)。
我现在有以下代码,但我不知道如何让它在二维数组中打印其位置的 x 和 y 值。
ImageView[][] mainGrid = new ImageView[8][8];
...
for (int x = 0; x < 8; x++) {
for (int y = 0; y < 8; y++) {
mainGrid[x][y] = new ImageView(image);
mainGrid[x][y].setOnMouseClicked(createMouseHandler());
}
}
...
private EventHandler<? super MouseEvent> createMouseHandler() {
return event -> {
System.out.println("Clicked");
}
}
非常感谢任何帮助!谢谢!
【问题讨论】:
-
createMouseHandler(int x, int y)怎么样?如果您不只是将其打印出来,请定义一个对象 (Cell),它表示一个数组元素并保存所有需要的信息:ImageView、x和y。使用Cell对象数组:new Cell[8][8]
标签: arrays events javafx onclick imageview