Hallo,
Ich habe eine JavaFX programm mit einer menueBar mit meheren MenueItem. Jetzt wollte ich wenn man ein Item anklickt eine neue fxml datei ins Fenster ladet.
Mit einem Butten schaffe ich es die fxml datein zu wächseln. Wenn ich jedoch eine menueBar nehme bekomme ich eine.
Meine FXML datei schaut so aus:
und mein controller schaut so aus:
Ich habe schon verschiedenste Lösungen probiert. Jedoch bekomme ich immer diese Fehlermeldung.
Ich wäre eurer Hilfe sehr dankbar.
LG Stefan
Ich habe eine JavaFX programm mit einer menueBar mit meheren MenueItem. Jetzt wollte ich wenn man ein Item anklickt eine neue fxml datei ins Fenster ladet.
Mit einem Butten schaffe ich es die fxml datein zu wächseln. Wenn ich jedoch eine menueBar nehme bekomme ich eine.
java.lang.reflect.InvocationTargetException
Code:
[INDENT]<?xml version="1.0" encoding="UTF-8"?>
<?importjavafx.scene.layout.BorderPane?>
<?importjavafx.scene.control.Button?>
<?importjavafx.scene.control.MenuBar?>
<?importjavafx.scene.control.Menu?>
<?importjavafx.scene.control.MenuItem?>
<BorderPane fx:id="BorderPane" prefHeight="200.0" prefWidth="400.0" xmlns:fx="http://javafx.com/fxml/1"
xmlns="http://javafx.com/javafx/2.2" fx:controller="sample.Controller">
<top>
<MenuBar fx:id="menuBar" BorderPane.alignment="CENTER">
<menus>
<Menu mnemonicParsing="false" text="Datei">
<items>
<MenuItem mnemonicParsing="false" text="Option 1" />
</items>
</Menu>
<Menu mnemonicParsing="false" text="Bearbeiten">
<items>
<MenuItem mnemonicParsing="false" onAction="#CreateContact" text="Kontakt erstellen" />
</items>
</Menu>
</menus>
</MenuBar>
</top>
</BorderPane>[/INDENT]
Code:
[INDENT]p
ackage sample;
import java.io.IOException;
import javafx.application.Platform;
import javafx.embed.swing.JFXPanel;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.Node;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.MenuBar;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
public class Controller {
private Node node;
private Stage stage;
private Scene scene;
private FXMLLoader fxmlLoader;
private Parent root;
private BorderPane borderpane;
private MenuBar menuBar2;
@FXML AnchorPane mainAnchorPane;
@FXML MenuBar menuBar;
@FXML private void CreateContact(ActionEvent actionEvent) throws[/INDENT]
IOException {
stage = (Stage) menuBar.getScene().getWindow();
scene = stage.getScene();
fxmlLoader = new FXMLLoader(getClass().getResource("contact_manager2.fxml"));
root = (Parent) fxmlLoader.load();
scene.setRoot(root);
}
}[/INDENT]
Ich wäre eurer Hilfe sehr dankbar.
LG Stefan