[メモ]javaのSwingで画像表示の反映

Thread.sleep()を使って,for文で回して,
その間の処理で表示画像を少しずつ変更させたかったけど失敗.
どうやらSwingはシングルスレッド設計らしく,
他のスレッドが介入することはできないらしい.
(Swingは常に一つのスレッドからのみアクセス可能)
なので,マルチスレッドを使って解決.
無事,画像の変更が反映された.


「プログラムメモ」
new Thread() {
 public void run() {
  for(int i=0; i<100; i++){     //100回繰り返し    <画像表示が変わる処理>    try {     Thread.sleep(1000);     //1秒毎に     } catch (InterruptedException e) {      e.printStackTrace();     }    }   }  }.start(); をActionPerformedから呼び出して実行 参考 「Java SE 6完全攻略」第27回 Swingでマルチスレッド – SwingWorker その1

コメントする

*