|
|
#1 |
|
Java Menu Bar?
In a a java menu bar, the setMnemonic() method doesn't take a char anymore, it takes an int. They say this is better. WTF? How am I supposed to show a character with an int? Is it the octal character codes?
|
|
|
|
0
|
|
|
#2 |
|
java.awt.event.KeyEvent has static int fields to pass to setMnemonic that corresponds to keys. If I read properly, casting an alphanumeric ASCII character to an int will be equivalent, but for others the members of KeyEvent should be used.
Docs are your friend. I'd post links, but posting from the phone. The javax.swing.AbstractButton doc describes how to use this. -Lee |
|
|
|
0
|
|
|
#3 | |
|
Yeah
Quote:
|
||
|
|
0
|
|
|
#4 | |
|
Quote:
Code:
open = new JMenuItem("Open Command...");
open.setMnemonic(KeyEvent.VK_O);
open.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,
Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
fileMenu.add(open);
|
||
|
|
0
|
|
|
#5 |
|
What happens? Does cmd+O do anything? What should happen when the menu item is selected? Maybe adding the additional code that deals with O is mucking things up?
-Lee |
|
|
|
0
|
|
|
#6 | |
|
Quote:
The only progress I've made is making it show the command symbol (⌘) on the menu. Last edited by Awesomeness; Mar 20, 2009 at 12:00 AM. Reason: update |
||
|
|
0
|
|
|
#7 |
|
For kicks you might check to see if:
KeyEvent.VK_O == (int)'O' Or KeyEvent.VK_O == (int)'o' That's more just for your own edification. You might also try passing (int)'O' to setMnemonic to see if that works. -Lee Edit: after reading the link you posted, it looks like setMnemonic is discouraged, and just the setAccelerator should do. If the item does nothing, how do you know if it was "pressed" or not? Last edited by lee1210; Mar 20, 2009 at 12:39 AM. |
|
|
|
0
|
|
|
#8 | |
|
Yes!
Quote:
Code:
//Create the menu bar.
menuBar = new JMenuBar();
int mask = Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();
//Build the first menu.
fileMenu = new JMenu("File");
fileMenu.getAccessibleContext().setAccessibleDescription("File");
menuBar.add(fileMenu);
//a group of JMenuItems
open = new JMenuItem("Open Command...");
open.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, mask));
open.addActionListener(this);
fileMenu.add(open);
fileMenu.addSeparator();
|
||
|
|
0
|
![]() |
|
«
Previous Thread
|
Next Thread
»
| Thread Tools | Search this Thread |
| Display Modes | |
|
|
Similar Threads
|
||||
| thread | Thread Starter | Forum | Replies | Last Post |
| User Name not Appearing in Top Menu Bar | applefan27073 | OS X | 7 | Nov 9, 2011 02:40 AM |
| Account name in the menu bar | danakm | Mac OS X 10.7 Lion | 9 | Jul 21, 2011 07:39 AM |
| Apple Menu Bar: Mouse-over auto hide and show | zdlyons | OS X | 8 | Feb 27, 2011 01:51 PM |
| How can I stop mac menu bar appearing in games | polo3400 | Mac and PC Games | 4 | Feb 17, 2011 04:31 PM |
| Screen resolution problems results in double menu bar | frannyy | MacBook | 0 | Nov 6, 2010 09:03 AM |
All times are GMT -5. The time now is 05:06 PM.







Linear Mode

