Swing/ColorChooserPreviewText の変更点
- 追加された行はこの色です。
- 削除された行はこの色です。
- Swing/ColorChooserPreviewText へ行く。
- Swing/ColorChooserPreviewText の差分を削除
--- category: swing folder: ColorChooserPreviewText title: JColorChooserのプレビューパネルにTitledBorderでテキストを表示する tags: [JColorChooser, UIManager] author: aterai pubdate: 2022-09-26T01:36:10+09:00 description: JColorChooserのプレビューパネルにTitledBorderでテキストを表示するかを切り替えます。 image: https://drive.google.com/uc?id=1WZCnjXziIrbnu75REm5tT6mjk5Mwdujc --- * 概要 [#summary] `JColorChooser`のプレビューパネルに`TitledBorder`でテキストを表示するかを切り替えます。 #download(https://drive.google.com/uc?id=1WZCnjXziIrbnu75REm5tT6mjk5Mwdujc) * サンプルコード [#sourcecode] #code(link){{ String key = "ColorChooser.showPreviewPanelText"; JTextArea log = new JTextArea(); JCheckBox check = new JCheckBox(key, UIManager.getBoolean(key)) { @Override public void updateUI() { super.updateUI(); boolean b = UIManager.getLookAndFeelDefaults().getBoolean(key); setSelected(b); LookAndFeel laf = UIManager.getLookAndFeel(); log.append(String.format("%s%n %s: %s%n", laf, key, b)); UIManager.put(key, b); } }; JButton button = new JButton("JColorChooser.showDialog(...)"); button.addActionListener(e -> { UIManager.put(key, check.isSelected()); Color c = JColorChooser.showDialog(getRootPane(), "title", null); log.append(String.format("color: %s%n", c)); }); }} * 解説 [#explanation] - `ColorChooser.showPreviewPanelText: true(null)` -- `ColorChooser.showPreviewPanelText`はデフォルトでは値が未設定で`null` -- `BasicColorChooserUI`で`null`の場合は`true`として扱うよう設定されているため、`MetalLookAndFeel`や`WindowsLookAndFeel`ではデフォルトでプレビューパネルに`TitledBorder`でテキストを表示する -- このテキストのデフォルトは日本語環境では「プレビュー」、英語環境では`Preview` -- `UIManager.put("ColorChooser.previewText", "...");`で文字列を変更可能 - `ColorChooser.showPreviewPanelText: false` -- `JColorChooser`のプレビューパネルにテキストを表示しない -- `GTKLookAndFeel`のデフォルト -- `NimbusLookAndFeel`で切り替えが正しく反映されない場合がある? * 参考リンク [#reference] - [[JColorChooserのSwatchサイズを変更する - Java Swing Tips>https://ateraimemo.com/Swing/ColorChooserSwatchSize]] - [[JColorChooserのSwatchサイズを変更する>Swing/ColorChooserSwatchSize]] * コメント [#comment] #comment #comment