トップ 一覧 Farm 検索 ヘルプ RSS ログイン

Diary/2007-4-23の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!Swingとスレッド
Swingに関する処理はSwingのイベント・ディスパッチ・スレッドで
実行しなくてはならない。
で、このイベントディスパッチスレッドをmainスレッドとは別にするために、
GUIを構築するコードをmainスレッドから直接呼び出すのではなく、
    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                new MySwingApp();
            }
        });
    }
とか、invokeLaterを使って呼び出すようにするべきのよう。
こうするとmainスレッドとは別にイベント・ディスパッチ・スレッドが
生成されることになる。
Swing使ったソフトで何やら挙動不審な動作をしていたのは、
Swingのスレッドまわりの勉強不足によっていたのかなぁ。
気づいたものから置き換えていこう。

http://java.sun.com/docs/books/tutorial/uiswing/components/examples/index.html#ScrollDemo
http://itpro.nikkeibp.co.jp/article/COLUMN/20070413/268205/
http://www.pc-view.net/article/162/2.html

!CSTコンペ
http://www.ieice.org/~cst/compe07/
マルチカーエレベーターの最適制御。
面白そう。