Swing/ComponentSizeVariant のバックアップ(No.3)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/ComponentSizeVariant へ行く。
- title: NimbusLookAndFeelでJComponentのサイズを変更する tags: [NimbusLookAndFeel, JComponent, Font] author: aterai pubdate: 2014-07-28T00:18:57+09:00 description: NimbusLookAndFeelを使用している場合、クライアントプロパティを設定することでJComponentの表示サイズを変更することが出来ます。
概要
NimbusLookAndFeel
を使用している場合、クライアントプロパティを設定することでJComponent
の表示サイズを変更することが出来ます。
Screenshot
Advertisement
サンプルコード
解説
NimbusLookAndFeel
を使用している場合、JComponent#putClientProperty("JComponent.sizeVariant", "mini");
のように、クライアントプロパティを設定することで、その表示サイズを変更可能- デフォルトは
regular
、その他は小さい順にmini
,small
,large
が設定可能 JComponent#updateUI()
を実行しないと、更新されない- このサンプルでは、
SwingUtilities.updateComponentTreeUI(window);
で実行
- このサンプルでは、
- フォントがユーザー指定されている場合は、文字サイズは更新されない?
- このサンプルでは、
updateUI()
の前に、フォントをjc.setFont(new FontUIResource(jc.getFont()));
でUIResource
化することで回避している
- このサンプルでは、
JTable
のBooleanRenderer
が二回目以降変更されない- 初回の
JCheckBox booleanRenderer = (JCheckBox) table.getDefaultRenderer(Boolean.class); booleanRenderer.putClientProperty("JComponent.sizeVariant", "mini");
は、正常に動作しているように見える
- 初回の
- デフォルトは