2009-02-06 4 views
8

리소스 번들 (또는 ResourceMap)을 사용하여 JMenu에 니모닉을 지정하고 싶습니다. 그래서 예를 들어, 리소스 파일이없는 코드가 될 것이다 ... 리소스 메뉴의 Java 메뉴 연상 기호

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입니다.

답변

11

자바의 javax.swing.KeyStroke 클래스를 제어 = 가속기를

add.Action.accelerator을 사용하여이 격차를 다리 :

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

가속기 JMenu의 지원되지 않습니다 , 만 JMenuItem (이는 메뉴를 사용하지 않고 작업을 호출하기 때문에 의미가 있습니다).

0

비슷한 방법으로 "FileMenu"를 (가짜) 액션으로 처리 할 수 ​​있습니까? 리소스 파일 내부

관련 문제