java fx节点 位置更新_如何使用FXML Controller更新BorderPane的中心节点

我正在尝试使用FXML更新BorderPane的中心节点 . 我在左边用Buttons创建了一个VBox,点击它们时应该更新中心节点,但中心节点不会更新 . 有人可以解释我做错了什么吗?

我知道按钮事件工作(它们打印到屏幕usiong println)但它不会更新UI .

根节点.fxml(BorderPane):

菜单

MenuController

public class MenuController implements Initializable {

@FXML

private BorderPane rootPane;

@FXML

private Button dashboardButton; //same name as in the menu.fxml file

@FXML

private Button salesButton; //same name as in the menu.fxml file

@FXML

private void dashboardButtonEvent(ActionEvent event) {

try {

VBox dashboard = FXMLLoader.load(getClass().getResource("../../../fxml/dashboard.fxml"));

rootPane = FXMLLoader.load(getClass().getResource("../../../fxml/root.fxml"));

rootPane.setCenter(dashboard);

} catch (IOException e) { System.out.println(e); }

}

@FXML

private void salesButtonEvent(ActionEvent event) {

try {

VBox sales = FXMLLoader.load(getClass().getResource("../../../fxml/sales.fxml"));

rootPane = FXMLLoader.load(getClass().getResource("../../../fxml/root.fxml"));

rootPane.setCenter(sales);

} catch (IOException e) { System.out.println(e); }

}

@Override

public void initialize(URL url, ResourceBundle resourceBundle) {

}

}

我假设我出错的地方是我使用rootPane = FXMLLoader.load(getClass() . getResource(“../../../ fxml / root.fxml”))分配根窗格的方式; . 如果是这种情况,我如何从现有场景中获取当前的rootPane?

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值