wxWindows mnemonic FAQ
What is an mnemonic?
An mnemonic is an underlined letter in a menu
or
labeled dialog control that indicates to a user a quick, keyboard method of simulating
a click on that element. For example, an Apply button may have the
letter A underlined. On Windows and UNIX, pressing Alt+A is a
convenient way to push that button. Mac OS X does not support
underlined mnemonics.
How do I keep the underlines from disappearing in Windows?
On Microsoft Windows 2000 and XP, the underlines only appear while
ALT is pressed. This makes the mnemonics difficult to debug.
especially in context menus!
Windows can be instructed to automatically show underlines for
accelerator
keys by checking the Show extra keyboard help in programs box
in the Keyboard pane of the Accessibility Options applet in the
Windows Control panel. Alternatively, right-click on the desktop background, go to Properties -> Appearance -> Effects,
and clear the checkbox labeled Hide keyboard navigation indicators until I use the Alt key.
How is an mnemonic added to a form control or menu item?
How do I pick an mnemonic letter?
- Avoid duplicates
- Don't use the same mnemonic letter is twice in the
same window.
- Be especially careful of drop down menus in the same
window. For example, for mail quick search controls, don't use F, E, V,
M, S, T, W or H (File, Edit, View, Message, Spam, Tools, Window, Help).
- Help
wanted: it would be useful to have an automated
tool to check for duplicate and missing mnemonics in wxWindows-based applications.
- Make it easy to see:
- Use letters at the beginning of the first or second
word of the label.
- Use a distinctive consonant or a vowel in the label.
- Use letters with wide widths, such as w, m, and capital
letters.
- Avoid letters with descenders, such as g, j, p, q, or y.
- Avoid letters next to a letter with a descender.
- Avoid letters that are only one pixel wide, such as i or l.
- Make it easy to remember
- Do the most important prompts first, so that they get
the best mnemonics.
- See if a similar prompt has an mnemonic elsewhere in
Windows, and use the same mnemonic. It's important to use standard mnemonics, to take advantage of people's muscle memory. For example: Properties, Rename, Delete, Cut, Copy, Paste, Open, Find, Find next, Save, Save as, Print, Exit.
- If not, try the first letter of the first word in the
prompt.
- Next, try the first letter of another word in the
prompt.
- Finally, use any non-silent letter in an action word
(do these after the rest of the dialog has mnemonics chosen).
- Common elements that don't get mnemonics
- OK buttons.
- Cancel buttons.
- Close buttons.
- Tab panel labels.