Swing/DisabledAreNavigable のバックアップの現在との差分(No.9)
- バックアップ一覧
- 差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- バックアップ を表示
- Swing/DisabledAreNavigable へ行く。
- 1 (2014-10-02 (木) 19:49:22)
- 2 (2014-11-01 (土) 00:46:09)
- 3 (2015-11-08 (日) 16:08:18)
- 4 (2017-04-26 (水) 13:46:51)
- 5 (2018-04-09 (月) 15:12:40)
- 6 (2018-04-19 (木) 13:35:56)
- 7 (2018-04-20 (金) 17:24:18)
- 8 (2020-04-18 (土) 19:01:26)
- 9 (2021-10-21 (木) 19:05:56)
- 10 (2022-07-15 (金) 13:49:33)
- 11 (2022-08-20 (土) 22:15:25)
- 追加された行はこの色です。
- 削除された行はこの色です。
--- category: swing folder: DisabledAreNavigable title: DisabledなJMenuItemのハイライトをテスト tags: [JMenuItem, UIManager, LookAndFeel] author: aterai pubdate: 2013-03-25T00:06:25+09:00 description: DisabledなJMenuItemがハイライト可能かどうかをLookAndFeelごとにテストします。 image: https://lh4.googleusercontent.com/--XCIC-Dhgwk/UU8M_ixmZeI/AAAAAAAABoU/aXonTNvOs0A/s800/DisabledAreNavigable.png --- * 概要 [#summary] `Disabled`な`JMenuItem`がハイライト可能かどうかを`LookAndFeel`ごとにテストします。 無効化状態の`JMenuItem`がハイライト可能かどうかを`LookAndFeel`ごとにテストします。 #download(https://lh4.googleusercontent.com/--XCIC-Dhgwk/UU8M_ixmZeI/AAAAAAAABoU/aXonTNvOs0A/s800/DisabledAreNavigable.png) * サンプルコード [#sourcecode] #code(link){{ // UIManager.put("MenuItem.disabledAreNavigable", Boolean.TRUE); String key = "MenuItem.disabledAreNavigable"; boolean b = UIManager.getBoolean(key); System.out.println(key + ": " + b); JCheckBox check = new JCheckBox(key, b) { @Override public void updateUI() { super.updateUI(); setSelected(UIManager.getLookAndFeelDefaults().getBoolean(key)); UIManager.put(key, isSelected()); } }; check.addActionListener(e -> UIManager.put(key, ((JCheckBox) e.getSource()).isSelected())); }} * 解説 [#explanation] - `WindowsLookAndFeel` -- `UIManager.getLookAndFeelDefaults().getBoolean("MenuItem.disabledAreNavigable")`の初期値は`true` -- `UIManager.put("MenuItem.disabledAreNavigable", ...)`で`Disabled`な`JMenuItem`をハイライトするかどうかを切替可能 -- `UIManager.getLookAndFeelDefaults().getBoolean("MenuItem.disabledAreNavigable")`の初期値は`Boolean.TRUE` -- `UIManager.put("MenuItem.disabledAreNavigable", ...)`で無効化(`Disabled`)した`JMenuItem`をハイライトするかどうかを切り替え可能 - `MetalLookAndFeel` -- `UIManager.getLookAndFeelDefaults().getBoolean("MenuItem.disabledAreNavigable")`の初期値は`false` -- `UIManager.put("MenuItem.disabledAreNavigable", Boolean.TRUE)`を設定すれば`Disabled`な`JMenuItem`でもハイライトが可能 -- `UIManager.getLookAndFeelDefaults().getBoolean("MenuItem.disabledAreNavigable")`の初期値は`Boolean.FALSE` -- `UIManager.put("MenuItem.disabledAreNavigable", Boolean.TRUE)`を設定すれば無効化(`Disabled`)した`JMenuItem`でもハイライトが可能 - `NimbusLookAndFeel` -- `UIManager.getLookAndFeelDefaults().getBoolean("MenuItem.disabledAreNavigable")`の初期値は`false` -- `UIManager.put("MenuItem.disabledAreNavigable", Boolean.TRUE)`を設定しても`Disabled`な`JMenuItem`をハイライト不可 -- `UIManager.getLookAndFeelDefaults().getBoolean("MenuItem.disabledAreNavigable")`の初期値は`Boolean.FALSE` -- `UIManager.put("MenuItem.disabledAreNavigable", Boolean.TRUE)`を設定しても無効化(`Disabled`)した`JMenuItem`のハイライトは不可 * 参考リンク [#reference] - [https://bugs.openjdk.java.net/browse/JDK-4515765 JDK-4515765 Win L&F: Disabled menu items should show highlight - Java Bug System] - [https://bugs.openjdk.java.net/browse/JDK-6325555 JDK-6325555 Only Partial Fix in for 4515765 in B53 Swing PIT - Java Bug System] - [https://bugs.openjdk.org/browse/JDK-4515765 JDK-4515765 Win L&F: Disabled menu items should show highlight - Java Bug System] - [https://bugs.openjdk.org/browse/JDK-6325555 JDK-6325555 Only Partial Fix in for 4515765 in B53 Swing PIT - Java Bug System] * コメント [#comment] #comment #comment