先日の不可解な現象を NetBeans のMLに投稿しました。
お忙しいなか、片貝さんがいろいろ調べてくださいました。
ありがとうございました!
おかげさまでテツ&トモのなんでだろう♪ から解放されました。
エラーなどのコード入力支援機能が上手く機能しないのはNetBeans側のバクのようです。
Nimbusルックアンドフィールのオブジェクトを指定して切り換えるコードを書くとコンパイルエラーが出るのはJDK側のバグでした。
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6618285
クラス名を指定することで回避はできるのですが java.net のフォーラムで Richard さんが推奨コードを提示してくれました。
String laf = null;
for (LookAndFeelInfo info :
UIManager.getInstalledLookAndFeels()) {
if (“Nimbus”.equals(info.getName())) {
laf = info.getClassName();
break;
}
}
if (laf == null) {
UIManager.setLookAndFeel
(UIManager.getSystemLookAndFeelClassName());
} else {
UIManager.setLookAndFeel(laf);
}
これなら完璧ですね。
Nimbus ルックアンドフィールの不具合はNetBeans を使わずにコマンドラインからコンパイルして確認できたのにすっかり便利な NetBeans に頼っていて忘れていました。
コマンドラインからコンパイルをしたのってどれくらい前だろう・・・
凄く遠い昔のような気がします(爆