Witam
Piszę sobie programik okienkowy przy użyciu JavyFX i podczas dodawania zmiany widoku występuję błąd i nie mogę zlokalizować skąd on sie bierze. Może jakieś inne czujne oko coś wychwyci.
Klasa main:
package PFKmain;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class main extends Application {
public static void main(String[] args) {
// TODO Auto-generated method stub
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
// TODO Auto-generated method stub
FXMLLoader loader = new FXMLLoader(this.getClass().getResource("/FXML/main.fxml"));
StackPane stackPane = loader.load();
Scene scene=new Scene(stackPane,1280,800);
primaryStage.setScene(scene);
primaryStage.show();
}
}
Klasa mainController:
package PFKcontrollers;
import java.io.IOException;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.layout.Pane;
import javafx.scene.layout.StackPane;
public class MainController {
@FXML
private StackPane mainStackPane;
public void initialize() {
FXMLLoader loader = new FXMLLoader(getClass().getResource("/FXML/menuScreen.fxml"));
Pane pane = null;
try {
pane = loader.load();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
MenuController menuController =loader.getController();
menuController.setMainController(this);
setScreen(pane);
}
public void setScreen(Pane pane) {
mainStackPane.getChildren().add(pane);
}
}
Klasa menuController:
package PFKcontrollers;
import java.io.IOException;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.control.Button;
import javafx.scene.control.SplitPane;
import javafx.scene.layout.Pane;
public class MenuController {
private MainController mainController;
public void setMainController(MainController mainController) {
this.mainController = mainController;
}
@FXML
public void menuButton1() {
FXMLLoader loader = new FXMLLoader(this.getClass().getResource("/FXML/option1.fxml"));
Pane pane=null;
try {
pane=loader.load();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
mainController.setScreen(pane);
}
@FXML
public void menuButton2() {
}
@FXML
public void menuButton3() {
}
}