Ich lade eine Liste von FXML-Dateien über meine Main App. Aber ich habe ein Problem, das in TabPane mit seiner FX: ID angezeigt wird. Dieses TabPane befindet sich unter einem BorderPane. Ich bin in der Lage, das Zentrum der Grenze zu erreichen, aber ich kann nicht auf das TabPane darunter zugreifen.Von MainApp, wie Inhalt in einer fx: ID in einem anderen Controller in JavaFX angezeigt wird
hier ist mein Setup
In my start:
@Override
public void start(Stage primaryStage) {
this.primaryStage = primaryStage;
initRootLayout();
showPersonOverview();
}
In my init
public void initRootLayout() {
try {
FXMLLoader loader = new FXMLLoader();
loader.setLocation(MainApp.class
.getResource("view/RootLayout.fxml"));
//Note this line, I am setting up my rootLayout to be the
//mainBorderPane, but I want it to be an AnchorePane under the main
//BorderPane
rootLayout = (BorderPane) loader.load();
Scene scene = new Scene(rootLayout);
primaryStage.setScene(scene);
RootLayoutController controller = loader.getController();
controller.setMainApp(this);
primaryStage.show();
} catch (IOException e) {
e.printStackTrace();
}
Hier ist, was ich mit einem Problem habe. Ich kann dies nicht in dem oben erwähnten TabPane anzeigen.
public void showPersonOverview() {
try {
FXMLLoader loader = new FXMLLoader();
loader.setLocation(MainApp.class.getResource("view/PersonOverview.fxml"));
AnchorPane personOverview = (AnchorPane) loader.load();
//Here I am displaying the personOverview inside the main boarderPane
rootLayout.setCenter(personOverview);
PersonOverviewController controller = loader.getController();
controller.setMainApp(this);
} catch (IOException e) {
e.printStackTrace();
}
}
rootController.getTabPane(). GetTabs() Ich sehe keine getTabs? meinst du getChildern? Wir haben das @FXML tabPane. das bekommen wir über getTabPane. getTabs füllt nicht für mich. – Moe
getChildren arbeitete für mich. Vielen Dank!! – Moe
Nein, ich meinte nicht "getChildren()". Ein 'TabPane' hat eine [' getTabs() '] (https://docs.oracle.com/javase/control/TabPane.html#getTabs--), Methode, die ist was ich in diesem Beispiel benutzt habe. Wenn Sie eine alternative Lösung gefunden haben, die für Sie arbeitet, ist das großartig. – jewelsea