最近、Java 1.4 で Swing アプリを作った。Windows 用の Look&Feel (LaF) が、微妙にネイティブのと違っていて気持ち悪い。せめてフォントだけでも変えられたら、だいぶまともなのに。 というわけで、変えてみた (と書きつつ、以下のコード例は気まぐれで Java 6)。 BasicLookAndFeel サブクラスを作る LaF を自作するには、javax.swing.LookAndFeel のサブクラスを作ればいい。カスタマイズする元の LookAndFeel を継承してもいいんだけど、非公開のクラスだったりするし、カスタマイズ対象は実行時に決められた方がいい。ので、LookAndFeel を継承するかたちで、既存の LookAndFeel に対するラッパーを作ればよさそうだ。 ……と思ってたんだけど、LookAndFeel を直接継承したら、Java 1.4