はい、ボードにGridPaneを使用してください。
Tic-Tac-Toe ゲームにも同じ方法を使用しましたが、問題なく動作しました。
class BoardSkin extends GridPane {
BoardSkin(Board board) {
getStyleClass().add("board");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
add(board.getSquare(i, j).getSkin(), i, j);
}
}
}
}
質問で述べたように、ボード グリッドの正方形の背後にあるImageViewでStackPaneを使用できますが、厳密には必要ではありません。
代わりに、以前にリンクした三目並べゲームの更新された css を使用します。ボード画像をグリッドの正方形の後ろに重ねるには、ボード画像をグリッドの背景画像として設定します。
.board {
-fx-hgap: 10px;
-fx-vgap: 10px;
-fx-background-image: url('http://www.woodge.com/books/maps/map_Narnia.jpg');
-fx-background-size: cover;
-fx-background-position: center;
}
.square {
-fx-padding: 10px;
-fx-background-color: rgba(100, 100, 100, 0.4);
}