[英]Javafx: how to fill a TilePane with circles and add an event handler to each one
[英]JavaFX: how to design a chess table with event handler on each square
如何在Java中繪制國際象棋桌?
我以為使用TilePane
可以。
我還設法在TilePane
放置了正方形。
但是,單擊其中一個正方形后,它應該會更改顏色。 (即從黑色到紅色,反之亦然)。 在此示例中,我使用Circle
而不是Rectangle
:
circle.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
System.out.println("Mouse Clicked!"));
}
});
顯示一條消息,但我無法更改circle
任何屬性
假設您已經聲明了@FXML Circle circle;
在您的fxml控制器中,並且您的圈子具有適當的fx:id,您可以使用以下內容更改圈子的顏色。 確保您正確導入了javafx.scene.paint.Color
。
circle.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
if (circle.getFill() == Color.RED)
circle.setFill(Color.BLACK);
else
circle.setFill(Color.RED);
System.out.println("Mouse Clicked!");
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.