在JavaFX应用程序顶部显示AnchorPane
我的主应用程序运行在一个具有多个选项卡的在JavaFX应用程序顶部显示AnchorPane,java,javafx,fxml,Java,Javafx,Fxml,我的主应用程序运行在一个具有多个选项卡的JFXTabPane中。 在特殊情况下,我想在整个应用程序的顶部加载另一个AnchorPane RootController.java JFXTabPane tabPane = new JFXTabPane(); tab = new Tab("Tab 1"); tabPane.getTabs().add(tab); borderPane.setCenter(tabPane); loader = new FXMLLoader(getClass().get
JFXTabPane
中。在特殊情况下,我想在整个应用程序的顶部加载另一个
AnchorPane
RootController.java
JFXTabPane tabPane = new JFXTabPane();
tab = new Tab("Tab 1");
tabPane.getTabs().add(tab);
borderPane.setCenter(tabPane);
loader = new FXMLLoader(getClass().getClassLoader().getResource("fxml1.fxml"));
parent = loader.load();
tab.setContent(parent);
Controller controller = loader.getController();
/* ... Loading more tabs ... */
/* Loading the additional `AnchorPane`, that needs to be loaded at a later point */
AnchorPane pane = FXMLLoader.load(getClass().getClassLoader().getResource("fxml2.fxml"));
Pane pane;
/* Registering that AnchorPane in the Controller */
public void setPane(Pane p) {
this.pane = p;
}
Fxml1Controller.java
JFXTabPane tabPane = new JFXTabPane();
tab = new Tab("Tab 1");
tabPane.getTabs().add(tab);
borderPane.setCenter(tabPane);
loader = new FXMLLoader(getClass().getClassLoader().getResource("fxml1.fxml"));
parent = loader.load();
tab.setContent(parent);
Controller controller = loader.getController();
/* ... Loading more tabs ... */
/* Loading the additional `AnchorPane`, that needs to be loaded at a later point */
AnchorPane pane = FXMLLoader.load(getClass().getClassLoader().getResource("fxml2.fxml"));
Pane pane;
/* Registering that AnchorPane in the Controller */
public void setPane(Pane p) {
this.pane = p;
}
我的方法是将窗格设置为可见,并在需要时将其置于前面:
private void showPane(ActionEvent event) {
pane.setVisible(true);
pane.toFront();
System.out.println(pane);
}
但这并没有改变任何事情
那么,如何在我的
JFXTabPane
顶部显示ancorpane
?将边框窗格和窗格添加到StackPane中。显示\隐藏StackPane项取决于条件。请参阅答案将边框窗格和窗格添加到StackPane中。显示\隐藏堆栈窗格项取决于条件。请参阅答案