Witam, niezbyt ogarniam jeszcze te errory w Javie więc prosiłbym o pomoc bo nie mam pomysłu - chyba robię tak jak na poradnikach ale no wywala errora :/
sample.Main
package sample;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
import javafx.scene.layout.Pane;
import javafx.scene.layout.StackPane;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
FXMLLoader fxmlLoader = new FXMLLoader(this.getClass().getResource("sample/sample.fxml"));
StackPane stackPane = fxmlLoader.load();
Scene scene = new Scene(stackPane,400,400);
primaryStage.setScene(scene);
primaryStage.setTitle("Jakis programek xD");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
sample.MainController
package sample;
import javafx.application.Application;
import randomGenerator.*;
import javafx.fxml.FXML;
import javafx.scene.layout.Pane;
public class MainController {
@FXML
Pane contentPane;
RandomGenerator randomGenerator = new RandomGenerator();
public void loadContent(Pane pane){
contentPane.getChildren().clear();
contentPane.getChildren().add(pane);
}
@FXML
private void openRandomGenerator(){
loadContent(randomGenerator.getPane());
}
@FXML
private void openPhotoViewer(){
}
@FXML
private void openCalculator(){
}
@FXML
private void exit(){
}
}
sample.sample.fxml
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.ButtonBar?>
<?import javafx.scene.layout.Pane?>
<?import javafx.scene.layout.StackPane?>
<?import javafx.scene.layout.VBox?>
<StackPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="sample.MainController">
<children>
<VBox prefHeight="200.0" prefWidth="100.0">
<children>
<ButtonBar nodeOrientation="LEFT_TO_RIGHT" prefHeight="40.0" prefWidth="602.0">
<buttons>
<Button mnemonicParsing="false" onAction="#openRandomGenerator" text="random" />
<Button mnemonicParsing="false" onAction="#openPhotoViewer" text="photoViewer" />
<Button mnemonicParsing="false" onAction="#openCalculator" text="calculator" />
<Button mnemonicParsing="false" onAction="#exit" text="exit" />
</buttons>
<padding>
<Insets right="10.0" />
</padding>
</ButtonBar>
<Pane fx:id="contentPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="373.0" prefWidth="602.0" />
</children>
</VBox>
</children>
</StackPane>
i w razie czego daje też generator ale tam chyba jest dobrze wszystko (jeszcze nie skończony)
package randomGenerator;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.layout.Pane;
import java.io.IOException;
public class RandomGenerator {
Pane pane;
public RandomGenerator(){
FXMLLoader fxmlLoader = new FXMLLoader(this.getClass().getResource("randomGenerator/randomGenerator.fxml"));
try {
pane = fxmlLoader.load();
}
catch (IOException e) {
e.printStackTrace();
}
}
public Pane getPane(){
return pane;
}
}