[英]Java Menu Mnemonics in Resource Files
我想使用資源包(或ResourceMap
)為JMenu
分配一個助記符。 因此,例如,沒有資源文件的代碼將是......
JMenu fileMenu = new JMenu();
fileMenu.setText("File"); // this would be read from a resource file
fileMenu.setMnemonic('F'); // but the docs say this is obsolete
fileMenu.setMnemonic(KeyEvent.VK_F);
那么如何將KeyEvent.VK_F放入資源文件中?
對於JMenuItem
我可以用動作來做,但這是JMenu
。
Java的javax.swing.KeyStroke類填補了這個空白:
JMenu fileMenu = new JMenu();
String mnemonic = // string from localization
fileMenu.setMnemonic(KeyStroke.getKeyStroke(mnemonic).getKeyCode());
JMenu
不支持加速器,僅適用於JMenuItem
(這是有道理的,因為它們在不使用菜單的情況下調用動作)。
在資源文件中使用加速器
add.Action.accelerator = control A.
您可以以類似的方式執行此操作,並將“FileMenu”視為(假)操作嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.