タイトルSwingのルック&フィールドをメニュー選択で切り替えるサンプルプログラムカテゴリーアップルからの開発資料, ユーザインタフェース, Java
作成日2001/9/5 15:13:30作成者新居雅行
サンプルコードとして公開されている「SwapLAF」はSwingのルック&フィールドを切り替えるサンプルだ。Pure Javaのコードで、Project Builderのプロジェクトファイルで提供されている。メニューでルック&フィール名を選択すれば、ボタンとテキストが表示されたウインドウのルック&フィールが変わるようになっている。UIManager.getInstalledLookAndFeelsによってサポートしているルック&フィールのクラス一覧が得られる。ルック&フィールの設定はUIManager.setLookAndFeelで行うが、その後にフォントの設定を行ったり、コンポーネントのリフレッシュにSwingUtilities.updateComponentTreeUIを利用するといったところがポイントだと言える。なお、サンプルのプロジェクトファイルは、2001 May版のDeveloper ToolsのProject Builder 1.0.1よりも新しいバージョンのProject Builderで作成したもののようだ。警告が出るが、1.0.1でも開いて問題なくコンパイルができる。そして、Mac OS X 10.0.4まででアプリケーションを実行するには、インプットメソッドをオフにして実行しないとアプリケーションがフリーズしたようになり強制終了する結果となる。なお、ルック&フィールのWindowsは、Mac OS Xではサポートしていないようで、設定しようとしてもエラーメッセージとなる点も要チェックポイントだろう。ルック&フィールの設定時に例外が発生する。
関連リンクJava: SwapLAF