SwingUtilities.invokeLater()/invokeAndWait()

Swingで複数スレッドの使い方を整理してみた。

  1. 重い処理を行う前にボタンなどをグレイにし、終わったら元に戻す方法。
  2. プログレスバーなど、進捗状況をGUIで表示する方法。
  3. 処理中にユーザに問い合わせを行い、その結果を受けて処理を続ける方法。
  4. イベントスレッドと別スレッドで同じデータをアクセスする方法。

それぞれ、どういう風にすればよいか考えがまとまった。
忘れないうちに絵を残しておこう。