Вы можете записать значение, относящееся к кнопке, в userData
при создании кнопки и обращаться к этому сохраненному значению, когда у вас есть ссылка на кнопку.
Например, записать пользовательские данные при создании кнопки:
buttons[i] = new Button();
buttons[i].setUserData(i);
А затем, когда вам нужно получить к нему доступ, извлеките данные пользователя, которые вы сохранили:
button.setOnAction(e -> {
int buttonIndex = (int) button.getUserData();
// do whatever you need to with button index...
});
Если вам нужно связать несколько частей данных с данным узлом, тогда вы можете использовать API node.getProperties()
, но, для вашего вопроса, использование свойства узла userData
, вероятно, все тебе нужно.
Мне нужно изменить сцену с созданными кнопками. Например: Первая кнопка должна перейти к первой сцене в массиве. Я понятия не имею, как это сделать.
Предполагая, что вы уже инициализировали массив сцен и пользовательские данные для своих кнопок, вы должны просто сделать:
button.setOnAction(e -> {
int index = (int) button.getUserData();
stage.setScene(sceneArray[index]);
});