【发布时间】:2017-12-26 08:48:15
【问题描述】:
我有一个选项卡窗格,其中包含一堆选项卡(显然)。通常,您可以通过在选项卡上调用 setOnSelectionChanged() 来为每个选项卡设置一个侦听器。但是,如果 TabPane 正在以某种方式重新组织,则选项卡窗格会自动选择列表中的第一个选项卡。这给我带来了一些性能问题,所以我想知道是否有办法知道鼠标单击是否导致选项卡被选中。显然标签不能有onMouseClick() 监听器。
【问题讨论】:
-
可能值得先解决性能问题。
-
是的,过去两天我一直在尝试这样做,取得了重大改进,但仍有工作要做。这是我正在探索的一条途径。希望有一种方法可以执行上述操作或强制选项卡窗格首先不选择任何内容。
-
听起来您正在尝试修复视图中的模型问题。相反,请使用
javafx.concurrent.Worker并更新相关属性,以免选项卡选择延迟。 -
是的,我每次通过从更改的模型重新创建整个视图来更改选项卡时应用一个新的“模型”,而不是将模型应用于已经存在的内容。我能够获得 400% 的性能提升。 :D 这个问题不再需要回答,但我想我会留下它,以防万一有人有解决方案而其他人可能需要它。