JCheckBoxのチェックアイコンの縁をフラットに変更する
Total: 1818
, Today: 1
, Yesterday: 0
Posted by aterai at
Last-modified:
概要
JCheckBox
のチェックアイコンの縁をフラットな描画に変更します。
Screenshot
Advertisement
サンプルコード
Box box1 = Box.createVerticalBox();
box1.setBorder(BorderFactory.createTitledBorder("setBorderPainted: false"));
JCheckBox c0 = new JCheckBox("setBorderPaintedFlat: false");
c0.setBorderPainted(false);
c0.setBorderPaintedFlat(false);
box1.add(c0);
box1.add(Box.createVerticalStrut(5));
JCheckBox c1 = new JCheckBox("setBorderPaintedFlat: true");
c1.setBorderPainted(false);
c1.setBorderPaintedFlat(true);
box1.add(c1);
View in GitHub: Java, Kotlin解説
setBorderPainted(false)
:JCheckBox
自体の縁を描画しないsetBorderPaintedFlat(false)
:JCheckBox
のチェックアイコンの縁をLookAndFeel
のデフォルトで描画するWindowsClassicLookAndFeel
やMotifLookAndFeel
のデフォルトの縁は、立体的な描画になるWindowsLookAndFeel
のデフォルトの縁は、フラットな描画になるのでこのプロパティの影響を受けない
setBorderPaintedFlat(true)
:JCheckBox
のチェックアイコンの縁をフラットな描画にするNimbusLookAndFeel
のデフォルトの縁は、立体的な描画になるのでこのプロパティの影響を受けないMetalLookAndFeel
の縁は常にフラットで内側は立体的だがこのプロパティで内側の描画までフラットにはならない
setBorderPainted(true)
:JCheckBox
自体の縁を描画するWindowsLookAndFeel
などのデフォルトはfalse
NimbusLookAndFeel
では効果がないJCheckBox#setBorderPaintedFlat(...)
には影響しない
参考リンク
- JCheckBox#setBorderPaintedFlat(...) (Java Platform SE 8)
Java 1.3
から導入されたプロパティであり、WindowsClassicLookAndFeel
やMotifLookAndFeel
のような古いLookAndFeel
でのみ有効- このため最近の
LookAndFeel
ではほぼ無意味?