Я не знаю, что происходит, я пытаюсь вернуться к предыдущим окнам с уже определенными значениями, но это не работает, я создал статический ObservableList, поэтому каждый раз, когда я добавляю новую цель, она будет добавляться,эта часть работает, вот код:
public void AddList(ActionEvent e) throws IOException {
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("Form.fxml"));
Parent root = loader.load();
Formcontroller = loader.getController();
Scene scene = new Scene(root);
Stage Newstage = (Stage)((Node)e.getSource()).getScene().getWindow();
Newstage.setScene(scene);
Newstage.show();
}
она отправит меня в окно, где находится форма, вот код, чтобы добавить новую цель:
public void addObjective(ActionEvent e) throws IOException {
if (this.saving.getText().equalsIgnoreCase("")) {
Objectives object = new Objectives (this.objective.getText(), Double.parseDouble(this.price.getText()), 0);
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("Objectives.fxml"));
Parent root = loader.load();
Objectivescontroller = loader.getController();
controller.AgregarObjetivo(object);
Scene scene = new Scene(root);
Stage Pstage = (Stage) button.getScene().getWindow();
Pstage.setScene(scene);
Pstage.show();
}else {
if (Double.parseDouble(this.saving.getText()) != 0 || Double.parseDouble(this.saving.getText()) == 0) {
Objectives object = new Objectives (this.objective.getText(), Double.parseDouble(this.price.getText()), Double.parseDouble(this.saving.getText()));
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("Objectives.fxml"));
Parent root = loader.load();
Objectivescontroller = loader.getController();
controller.addObjetive(object);
Scene scene = new Scene(root);
Stage Pstage = (Stage) button.getScene().getWindow();
Pstage.setScene(scene);
Pstage.show();
}
}
}
воткод для добавления цели в список:
public void addObjective (Objectives objective) {
objectives.add(objective);
listview.getItems().addAll(objectives);
}
каждая добавляемая мной новая цель будет оставаться в списке, теперь проблема в том, что я пытаюсь сделать кнопку в окне формы, где я могунажмите на нее и вернитесь, не добавляя новую цель, но она показывает мне список пустым, я не знаю, почему он не показывает мне список, который уже имеет цели, вот код:
public void goback (ActionEvent e) throws IOException {
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("Objectives.fxml"));
Parent root = loader.load();
Scene scene = new Scene(root);
Stage Pstage = (Stage) button.getScene().getWindow();
Pstage.setScene(scene);
}
еготот же код, который я использовал для добавления новой цели, единственное отличие в том, что я не вызываю контроллер, извините, если мой код уродлив или нуб, но я новичок в java - javafx и я только начинаю, спасибоs!