2009-02-06 20 views
8

Kaynak paketlerini (veya ResourceMap) kullanarak JMenu numaralı bir mnemoniği atamak istiyorum. Yani, örneğin, kaynak dosyası olmadan kod olacaktır ... Kaynak Dosyalarındaki Java Menüsü Düzenlemeleri

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); 

Peki nasıl bir kaynak dosyasında KeyEvent.VK_F koyacağım?

JMenuItem için eylemler ile yapabilirim, ancak bu JMenu.

cevap

11

Java'nın javax.swing.KeyStroke sınıfını kontrol = Hızlandırma

add.Action.accelerator kullanmak köprü boşluğu:

JMenu fileMenu = new JMenu(); 
String mnemonic = // string from localization 
fileMenu.setMnemonic(KeyStroke.getKeyStroke(mnemonic).getKeyCode());

Hızlandırıcılar JMenu s için desteklenmez , sadece JMenuItem s için (bu mantıklıdır, çünkü bunlar menüyü kullanmadan bir eylem başlatır).

0

Benzer şekilde yapabilir ve "FileMenu" (sahte) eylem olarak kabul edebilir misiniz? Kaynak dosyası içinde

İlgili konular