Swing/ShowMnemonics のバックアップ(No.10)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/ShowMnemonics へ行く。
- 1 (2016-09-26 (月) 01:41:02)
- 2 (2017-02-20 (月) 19:40:38)
- 3 (2017-02-28 (火) 17:51:53)
- 4 (2017-11-05 (日) 20:46:51)
- 5 (2018-02-15 (木) 14:23:42)
- 6 (2018-02-20 (火) 19:08:53)
- 7 (2020-02-20 (木) 15:08:33)
- 8 (2021-08-06 (金) 19:03:14)
- 9 (2022-08-20 (土) 22:15:25)
- 10 (2025-01-03 (金) 08:57:02)
- 11 (2025-01-03 (金) 09:01:23)
- 12 (2025-01-03 (金) 09:02:38)
- 13 (2025-01-03 (金) 09:03:21)
- 14 (2025-01-03 (金) 09:04:02)
- category: swing folder: ShowMnemonics title: JMenuItemなどのMnemonicの下線を常に表示する tags: [JMenuItem, WindowsLookAndFeel, JButton, Mnemonic] author: aterai pubdate: 2016-09-26T01:36:44+09:00 description: WindowsLookAndFeelを使用する環境でJMenuItemやJButtonなどに設定したMnemonicの下線を常に表示するよう設定します。 image: https://drive.google.com/uc?id=1m64MGIgQ2o25gL3ZpVz_ZyEXU_TG2oZnAw
概要
WindowsLookAndFeel
を使用する環境でJMenuItem
やJButton
などに設定したMnemonic
の下線を常に表示するよう設定します。
Screenshot
Advertisement
サンプルコード
showMnemonicsCheck.setSelected(UIManager.getBoolean("Button.showMnemonics"));
showMnemonicsCheck.setMnemonic('B');
showMnemonicsCheck.addActionListener(e -> {
UIManager.put("Button.showMnemonics", ((JCheckBox) e.getSource()).isSelected());
if (UIManager.getLookAndFeel() instanceof WindowsLookAndFeel) {
WindowsLookAndFeel.setMnemonicHidden(true);
SwingUtilities.getRoot(showMnemonicsCheck).repaint();
}
});
View in GitHub: Java, Kotlin解説
上記のサンプルでは、JMenuItem
に設定したMnemonic
の下線表示の切り替えをテストしています。
UIManager.put("Button.showMnemonics", false)
WindowsLookAndFeel
の場合、Mnemonic
の下線が非表示になる- その他の
LookAndFeel
ではこの設定は無効 - この場合でもAltキーを押すと
WindowsLookAndFeel.setMnemonicHidden(false)
となって下線は表示される
- その他の
- デフォルト
- 例えば
Windows 10
の場合「コントロール パネル\コンピューターの簡単操作\コンピューターの簡単操作センター\キーボードを使いやすくします」の「ショートカット キーとアクセス キーに下線を表示します」のチェックに対応
- 例えば
WindowsLookAndFeel
でチェックボックスで切り替えを行う際、WindowsLookAndFeel.setMnemonicHidden(true)
で一旦下線を非表示にしてからJFrame
全体を再描画している
UIManager.put("Button.showMnemonics", true)
WindowsLookAndFeel
の場合でもMnemonic
の下線が常に表示状態になる