0

我正在开发具有多个 FXML 视图的 JavaFX、Jfoenix 桌面应用程序。该应用程序应该实时识别特定的嵌入式设备何时连接或断开连接。不幸的是,没有中断功能,所以我被迫不断地在一个从主视图运行的单独线程中汇集。问题是,我必须从不同的视图中检测到这种变化(当连接和断开设备时),而不仅仅是在主视图上。而且由于每个视图都有自己的控制器,并且使用 注入了许多 GUI 元素SceneBuilder,因此我无法触摸其中任何一个,因此我无法在TextBox例如上创建侦听器。

有什么方法可以让我不断地在其他视图中监听诸如在主视图的池线程中进行的布尔标志更改之类的事情?

像这样,监听布尔变量的变化:isHiConnected。此代码在实现任务的 JavaFX 服务中运行:

if (textName != "Disconnected") {
    if(!recentChange1) {
        isHiConnected = true;
        recentChange1 = true;
        recentChange2 = false;
    }
} else {
    if(!recentChange2) {
        isHiConnected = false;
        recentChange2 = true;
        recentChange1 = false;
    }
}
4

0 回答 0