假设您在拆分窗格中只有两个节点,您可以将第二个(右)替换为
splitPane.getItems().set(1, newNode);
(更新)
如果您SplitPane
在 FXML 文件中定义,则需要在控制器中执行此操作。要访问拆分窗格,只需给它一个fx:id
属性(在 SceneBuilder 中,它位于右侧面板的“代码”部分中)并使用@FXML
注释将其注入控制器:
FXML 文件:
<!-- imports omitted -->
<AnchorPane xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.MyController">
<SplitPane fx:id="mainSplitPane">
<!-- ... -->
</SplitPane>
</AnchorPane>
MyController.java:
package com.example ;
// imports omitted...
public class MyController {
@FXML
private SplitPane mainSplitPane ;
@FXML
private void handleButtonPress() {
Node newNode = ... ;
mainSplitPane.getItems().set(1, newNode);
}
// ...
}