UIから長時間実行されるバックグラウンドプロセス(サービスとしてコード化)をトリガーしたい。ただし、そのタスクの進行状況もユーザーに示したいと思います。
どうすればこれを達成できますか?(デカップリングを侵害したくない)。それを解決するためのベストプラクティスはありますか(オブザーバーとコマンドなどのデザインパターンを組み合わせる)?
UIから長時間実行されるバックグラウンドプロセス(サービスとしてコード化)をトリガーしたい。ただし、そのタスクの進行状況もユーザーに示したいと思います。
どうすればこれを達成できますか?(デカップリングを侵害したくない)。それを解決するためのベストプラクティスはありますか(オブザーバーとコマンドなどのデザインパターンを組み合わせる)?
JProgressBarを見て、進行状況の変更を SwingWorkerRunnable#Thread
またはSwingWorkerから呼び出すことができます
SwingWorker
重い作業を行いJProgressBar
、ユーザーに進行状況を表示するために UI に含まれるを更新する別の例を次に示します。
以下は、オブザーバー パターンのみを使用して UI で進行状況を表示する方法の例です。JAVA サンプル コードが提供されている場合: