J'ai un menu que j'ai créé à l'aide de JMENU. Je veux affecter une clé de raccourci Alt-F à ce menu. J'ai utilisé Setmnemonic ('F') pour le faire, mais le menu ne reconnaît pas le mnémonique.
Quelle est la meilleure façon de résoudre ou de déboguer ce problème? Je trouve que le réglage d'un point de pause n'en aide pas beaucoup. P>
Merci. P>
Code Snippet: P>
//higher up in variable declaration
/** Menus on the menu bar */
private JMenu uiFindMnu = new JMenu("Find");
...
//inside the constructor
// set mnemonic for the Find menu
uiFindMnu.setMnemonic('F');
3 Réponses :
Utiliser Je vous recommande de lire ceci sur JMENUS: HOWTO Utilisez des menus P> Voici un extrait de cet article: P> Les menus soutiennent deux types d'alternatives de clavier: mnemonics et
accélérateurs. Les mnémoniques offrent un moyen d'utiliser le clavier pour naviguer
la hiérarchie des menus, augmentant l'accessibilité des programmes.
Les accélérateurs, d'autre part, offrent des raccourcis clavier à contourner
Naviguer la hiérarchie du menu. Les mnémoniques sont pour tous les utilisateurs;
Les accélérateurs sont destinés aux utilisateurs de puissance. P>
Un mnemonic est une clé qui fait choisi un élément de menu déjà visible.
Par exemple, à menudemo, le premier menu a le mnémonique A, et son
deuxième élément de menu a le Mnemonic B. Cela signifie que lorsque vous courez
Menudemo avec l'aspect java et la sensation, appuyant sur l'alt et une touche
fait apparaître le premier menu. Bien que le premier menu soit visible, appuyez sur
La touche B (avec ou sans ALT) fait choisi le deuxième élément de menu.
Un élément de menu affiche généralement son mnémonique en soulignant le premier
occurrence du caractère mnémonique dans le texte de l'élément de menu, comme le
suivant des spectacles d'instantané. B est le caractère mnémonique de ce menu
Article p>
Vous pouvez spécifier un mnémonique soit lorsque vous construisez l'élément de menu ou
avec la méthode Setmnémonic. Voici des exemples de mnémoniques
et accélérateurs: p>
blockQuote> Comme vous pouvez le constater, vous définissez un mnémonique en spécifiant la constante KeyEvent.
correspondant à la clé L'utilisateur doit appuyer sur. P>
blockQuote> p> setmnémonique (keevent.vk_f); code>
Donnera cela un essai et je vais laisser tout le monde savoir le résultat
@zfranciscus a édité mon message avec un lien expliquant tout ce que vous devez savoir sur JMENUS :)
à l'intérieur d'un constructeur de classe (Extentant JFRAME):
JMenu helpmenu = new JMenu("File");
helpmenu.setMnemonic('F');
JMenuBar menubar = new JMenuBar();
menubar.add(helpmenu);
setJMenuBar(menubar);
Bonne réponse, mais c'est Pas une bonne idée à "EXTENDY (ING) JFRAME"
a souffert de problème similaire et s'est rendu compte qu'en raison du cadre de l'apparence Posté un blog post ici P>
Je pense que nous allons avoir besoin de voir du code.
Pourquoi quelqu'un pourrait-il suivre cette question? C'est des trucs de base. Tout ce que l'affiche doit faire est de lire l'API JMENU pour trouver un lien vers le tutoriel de swing sur "Comment utiliser les menus" pour un exemple de travail. Pourquoi récompenser les gens avec des points d'être paresseux? Non seulement cela sans un SSCCE, nous perdons du temps devinant ce que l'affiche aurait pu faire de mal, la question n'est donc pas une question complète.
J'ai trouvé que JMENU Mnemonic se comporter différemment de se comparer à une touche mnémonique. Lorsque je veux cliquer sur un bouton à l'aide de Mnemonic, je peux simplement appuyer sur Alt Suivre par la lettre de coupe courte. Avec JMENU, je dois: appuyer sur le bouton ALT, attendre la balançoire sur Hightlight Le premier menu, utilisez la touche fléchée pour choisir l'autre menu ou appuyez sur les alphabets de raccourci correspondants pour sélectionner le menu.