Hi I have 3 classes : Main, GuiController, AddcompetitionController
2 Views : Gui and another popupWindow : AddCompetition
I am trying to use GuiController inside AddcompetitionController. And I am having troubles. Can some1 help me please ?
AddcompetitionController - I am already trying to initialize GuiController gc and use its function (gc.refreshAll());
public class AddcompetitionController implements Initializable {
private GuiController gc = new GuiController(); ------ initialize
public void setGC(GuiController gc) {
this.gc = gc ;
}
@FXML // dd/MM/yyyy
void addCompetitionButtonAction(ActionEvent event) {
String text = dateTF.getText();
java.time.format.DateTimeFormatter formatter = java.time.format.DateTimeFormatter.ofPattern("dd/MM/yyyy");
java.time.LocalDate textFieldAsDate = java.time.LocalDate.parse(text, formatter);
java.sql.Date sqlDate = java.sql.Date.valueOf(textFieldAsDate);
App.addCompetition(disciplineTF.getText(), categoryTF.getText(), sqlDate,
cityTF.getText(), countryTF.getText());
Stage stage = (Stage) button.getScene().getWindow();
stage.close();
gc.refreshAll(); ----- calling a method
}
}
GuiController
public class GuiController implements Initializable {
code ... initialize... etc
@FXML
void addCompetitionButtonAction(ActionEvent event) {
Parent root;
try {
Stage stage = new Stage();
root = FXMLLoader.load(getClass().getResource("/javaFX/AddCompetition.fxml"));
Scene scene = new Scene(root);
stage.setTitle("Add new competition");
stage.setScene(scene);
stage.show();
} catch (IOException e) {
e.printStackTrace();
}
}
Main
package javaFX;
imports...
public class Main extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
Parent root;
try {
root = FXMLLoader.load(getClass().getResource("/javaFX/Gui.fxml"));
Scene scene = new Scene(root);
primaryStage.setScene(scene);
primaryStage.show();
} catch (IOException e) {
e.printStackTrace();
}
}
}