私はデータモデリングにObservableMap
を使用しており、エントリ全体を更新したいと考えています。最初はObservableMap
が空であり、多くの要素と非同期でいっぱいになります。Scala ScalaFX:Observableの大きな変更を扱う方法*
ここで問題は、すべてのエントリごとにonChanged
イベントが発生し、イベントが多すぎてGUIの動作が遅くなることです。私はpkgs.clear() ; pkgs ++= newpkgs
を使用しました。
onChanged
のいずれかをトリガーするには、一時的にハンドラを無効にするか、すべての要素を更新した後でのみ実行するマップ上で操作を行う方法がありますか?
データ構造にダミー要素を追加し、このダミー要素が変更されたときに 'onChange'コードでいくつかのコードを実行するだけで良い解決策はありませんでした。最後に、更新を手動で開始します。このようにしても、何千ものonChangeイベントがトリガされますが、実際にはダミー要素を変更して手動で更新をトリガするときに限り、実際の更新が行われます。本当に最適ではありませんが、少なくとも解決策です。もちろん、このダミー要素をGUIコードの他の領域で考慮する必要があります:-( –