Menuitem Mnemonicsを活性化するためにALTを必要としないSingleFrameApplication?
質問
NetBeans 6.9 IDEで、あなたが作成する場合New Project >> Java >> Java Desktop Application
それを実行すると、メニュー項目にはニーモニックがありますが、それ以降にのみわかります ALT
押されています。
(NetBeansプログラム自体は、このスタイルのメニューを使用しています。)
ただし、新しいものを作成する場合 File >> Swing GUI Forms >> JFrame Form
, 、およびニーモニックを備えた単純なメノバーを追加してからJFrameを実行します。ニーモニックは常に押すことなく表示されます ALT
. 。これが私が好むものです。
(Firefoxはこのスタイルのメニューを使用しています)
私の考えはそれです org.jdesktop.application
デフォルトの設定をオーバーライドしますが、それは単なる推測です。誰もが、単一フラメップリケーションを必要としない方法を知っています ALT
押される?
ありがとう。
編集:問題は、JFrameとJdesktopが異なるデフォルトの外観と感触を使用していることがわかったことでした
解決
Windowsの設定です。 XPに移動します:
- コントロールパネル
- 画面
- 外観
- 効果
- Altキーを押すまで、キーボードナビゲーションの下線付き文字を非表示
(Win7はどこかに似たような設定があるはずだと思います。)
デフォルトの設定がオンなので、Javaは正しく、Firefoxは 間違い (Office 2003でさえ、その設定を尊重していません)。
チェックを外すと、JavaでMnemonicの下線が常に表示されます。
Windows LAFのみが設定を正しく尊重していることに注意してください。モチーフと金属は常に下線を示しています。 NetBeansやJDeskTopは使用していませんが、System LAFを使用しているため、下線が正しいと思います。
Windows LAFの下で常に下線を表示したい場合(前に二度考えてください)、電話してください UIManager.getLookAndFeelDefaults().put("Button.showMnemonics", false)
, 、それはそうします いいえ XPのために働いているようです WindowsMenuItemUI#paintText
Vistaの下の旗のみをチェックします。 Win7 JDKを自分で確認できます。
あることに注意してください 受け入れられたバグ 設定がオンになっている場合、これはこのようになります(宇宙で2番目の最もひどいバグ追跡システムを解析する時間を節約します。最悪の事態は、私の会社が以前に持っていた社内のコールドフュージョンシステムです):ニーモニックで1つのメニューを作成します、例えば &File
, 、 押す Alt-F
, 、リリース、プレス Alt-F
繰り返しますが、下線はなくなりました。彼らはあなたが他のことをしてすぐに戻ってきました、クリック、またはただ押すだけです Alt
それ自体が。