我已经构建了一个ImageView的2d数组,我希望能够在单击它时打印出ImageView的索引(并使用这些信息来更改图片(。
我现在有下面的代码,但我不知道如何让它打印它在2d数组中位置的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");
}
}
非常感谢您的帮助!非常感谢。
这个问题最常见的解决方案是使用Node类的getProperties((方法。您可以使用它将任何用户信息存储在您喜欢的节点中,然后在以后需要时检索。在您的情况下,存储索引,然后在鼠标处理程序中检索它们。