私はswingでアプリケーションを作成しています。数千行を超えるデータベースからレコードをフェッチしようとしたとき。取得に時間がかかりません。それは私のクライアントを退屈させるかもしれません。だから私は次のようなメッセージを表示したい
Loading please wait...
リクエストがリクエストで応答を得るのに5分以上かかる場合、上記のメッセージのように表示したい。私を助けてください..ありがとう
私はswingでアプリケーションを作成しています。数千行を超えるデータベースからレコードをフェッチしようとしたとき。取得に時間がかかりません。それは私のクライアントを退屈させるかもしれません。だから私は次のようなメッセージを表示したい
Loading please wait...
リクエストがリクエストで応答を得るのに5分以上かかる場合、上記のメッセージのように表示したい。私を助けてください..ありがとう
JXBusyLabel
で使用できますJavaFX
。ガラス板にラベルを塗るだけです。このリンクが役立つ場合があります。
Concurrency In Swing ...を確認することから始めます。
おそらく最も簡単な解決策はSwingWorker
、 を使用することです。これにより、バックグラウンド スレッドでリクエストを実行できますが、更新を UI に同期するための多くのメソッドが提供されます。
例えば...
SwingWorker requestWorker = new SwingWorker<Object, Object>() {
protected Object doInBackground() throws Exception{
// Make your request
// Process your request
// You can use setProgress if you know how many values you have...
// (You will need to use a property listener to monitor
// these changes ;))
// You can also use publish to push updates back to the UI
return null;
}
protected void done() {
// Remove the "wait" notification...
}
}