ソフトウェア開発したい日記

「面白い!」と思った頭の体操や、数学の問題を載せていきます
その他ロードバイクででかけた先の写真や、ソフト開発のメモ等

NetBeans 7.0⇒7.0.1の地味に嬉しい変更点

2011年09月20日 20時12分08秒 | 独り言
今日つかってて気づいた、すごく地味な変更点。

今まで、何か文字を打ってセミコロンを付けずに改行すると、
自動的にインデントされていました。
@から始まるアノテーションでもまた然り。

それが、アノテーションの後はインデントされなくなっていました。
後からアノテーションを追加するときは今までの仕様で全く問題無かったのですが、
自分は結構先に書くことが多いので、地味だけど結構嬉しいです。

例えばJComponentのpaintComponentが次のように記述しますが、

@Override
public void paintComponent(Graphics g){

これを@Overrideアノテーション⇒メソッドの順で書こうとすると
public..の書き始めが字下げされちゃって、バックスペースで消すのが面倒でした。

アノテーションの後にインデントは、
まず間違いなく不要だということでこのような仕様変更になったことと思います。

NetBeans 7.0.1でLook and FeelがNimbusに?

2011年09月19日 17時14分04秒 | 独り言
JDK7とNetBeans 7.0.1をインストールして、
JFrameフォームを作ってみたら、look and feelがNimbusになっていて

「うわあああああああああああ」

ってなったけど、ソースコードを見てみたら
mainメソッドの中にUIManagerクラスのsetLookAndFeelメソッドが自動生成されていただけで、

「おぉぅ・・・」

ってなりました。

ちょっと謎仕様でしたが、
バージョンやプラットフォームの違いを考慮した
安全性の高い(と思う)LnF設定のコードは参考になりました。
forループでNimbus LnFがあるかどうか調べて、
見つかったときのみsetLookAndFeelメソッドを呼び出しています。

↓自分がよく使う手抜きLnF設定
try {
javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
} catch (Exception ex) {
ex.printStackTrace();
}

↓NetBeans 7.0.1で自動生成されていたコード
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(MPS.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(MPS.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(MPS.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(MPS.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}