【问题标题】:JavaFX TabPane - Change one tab, update the othersJavaFX TabPane - 更改一个选项卡,更新其他选项卡
【发布时间】:2013-12-12 15:09:58
【问题描述】:

我有一个带有 10 个选项卡的 TabPane(每个选项卡都有其控制器)。在其中一个中,我有一个表“类别”,用户可以在其中添加/编辑/删除类别。 其他选项卡具有相同的表“类别”,较小,处于只读模式,用户只能选择类别。 然后,当在类别选项卡中修改表“类别”时,我想要的是更新其他选项卡的所有其他表类别。 我的想法是(尚未实现),在顶部面板上放置一个检测选项卡更改的侦听器,当用户离开类别选项卡时,检查是否进行了更改。 如果是这样,请调用所有涉及的控制器来更新他们自己的类别表。

我的问题是,是否有一种不那么繁琐的方法可以做到这一点。诸如发送消息“表已更改”之类的内容,并且消息的所有“侦听器”选项卡都会更新其表。类似于本地 JMS,而不是客户端服务器。有没有可以在同一个应用程序中使用这种消息服务的东西,或者我上面提出的解决方案是最一致的?我认为问题更多的是Java而不是JavaFX。 非常感谢。

【问题讨论】:

    标签: java tabs javafx updates


    【解决方案1】:

    最简单的方法是将类别保存在某个顶层的 ObservableList 中(比如在您的 Application 子类中),并让所有表共享对该列表的引用 (table.setItems(yourList))。每当在类别选项卡中进行更改时,其他选项卡都会自动反映更改。

    【讨论】:

    • 感谢您的回答。我在想一个你知道的“通用解决方案”......将它应用到任何地方。好吧,与此同时,我将尝试您的解决方案。谢谢!
    猜你喜欢
    • 2013-01-02
    • 1970-01-01
    • 2013-11-22
    • 1970-01-01
    • 2017-01-28
    • 1970-01-01
    • 2016-01-08
    • 2016-09-14
    • 2018-01-03
    相关资源
    最近更新 更多