#button #javafx #gridpane
#кнопка #javafx #панель сетки
Вопрос:
Я использую панель сетки, которая содержит несколько кнопок. Когда мы нажимаем на кнопку, она меняет стиль, и я внедряю кнопку сброса. Что я пытаюсь сделать, так это применить определенный стиль, когда мы нажимаем на эту reset
кнопку.
Вот мой код, в котором я пытаюсь заставить кнопки применить стиль по умолчанию:
public void displayNewBoard(){
for (int row = 0; row < GRID_WIDTH; row ) {
for (int col = 0; col < GRID_HEIGHT; col ) {
gZone.getChildren().setBackground(new Background(new BackgroundFill(Color.LIGHTGRAY, new CornerRadii(0),new Insets(0))));
}
}
}
gZone
это моя панель сетки, и я хочу получить каждую кнопку, но строка неправильная.
Я также попробовал другой способ:
for (int row = 0; row < GRID_WIDTH; row ) {
for (int col = 0; col < GRID_HEIGHT; col ) {
for (Node node : gZone.getChildren()) {
if(gZone.getRowIndex(node) == row amp;amp; gZone.getColumnIndex(node) == col) {
node.setBackground(new Background(new BackgroundFill(Color.LIGHTGRAY, new CornerRadii(0),new Insets(0))));
break;
}
}
}
}
Ответ №1:
Я, наконец, использовал массив со всеми кнопками, чтобы я мог изменить их следующим образом :
for (int row = 0; row < GRID_WIDTH; row ) {
for (int col = 0; col < GRID_HEIGHT; col ) {
grid[row][col].setBackground(new Background(new BackgroundFill(Color.LIGHTGRAY, new CornerRadii(0),new Insets(0))));
grid[row][col].setText("");
}
}