Я пытаюсь установить событие мыши для мыши, выпущенной для кнопки в javafx.Программа прикреплена к файлу Excel, который читает данные кнопки.Когда я использую событие, чтобы дать ему метод, который говорит необработанное исключение ошибок, когда я уже выбросил ошибки в обоих методах.
@FXML
void initRecipes() throws IOException, InvalidFormatException {
File file = new File("src/main/resources/RecipeList/Recipes.xlsx");
String path = file.getAbsolutePath();
ExcelReader list = new ExcelReader(path);
int i = 10;
int sheetNo = 0;
categories.add(cheap);
categories.add(showstopper);
categories.add(quick);
categories.add(breakfast);
categories.add(deserts);
categories.add(salads);
for (HBox h : categories) {
for (int k = 0; k < list.getAmount(sheetNo); k++) {
String buttonId = Integer.toString(i) + Integer.toString(k + 1);
Button button = new Button(list.getName(buttonId, sheetNo));
button.setId(buttonId);
button.setStyle("-fx-background-image: url('" +
list.getImage(buttonId, sheetNo) + "')");
button.setPrefHeight(buttonHeight);
button.setPrefWidth(buttonWidth);
button.setOnMouseReleased(event -> changeScene(buttonId));
//Error occuring here ^^^^^
h.getChildren().add(button);
}
sheetNo++;
i += 10;
}
list.close();
}
void changeScene(String buttonId) throws IOException, InvalidFormatException {
File file = new File("src/main/resources/RecipeList/ingredients.xlsx");
String path = file.getAbsolutePath();
ExcelReader list = new ExcelReader(path);
SecondaryPresenter s = new SecondaryPresenter();
s.initialize();
}
Я совершенно не уверен, является ли это правильным способом установкисобытие и почему он показывает эту ошибку, если я уже выбросил 2 ошибки, которые он говорит, что я не обработал.Кто-нибудь знает, что я делаю не так?Спасибо