2009-10-02 9 views

Répondre

0

Les composants qui s'étendent AbstractButton ont des méthodes qui vous permettent de définir le mnémonique ou l'accélérateur. Pour les autres, vous devez le faire vous-même.

Tous les composants Swing utilisent des liaisons de touches (même le JMenu que vous décrivez ci-dessus). Cela fonctionne en liant un KeyStroke à un Action. Pour trouver toutes les liaisons Swing actuelles, vous pouvez consulter Key Bindings. L'entrée comprend également un lien vers le tutoriel Swing sur "Comment utiliser les liaisons de touches".

-1

Vous pouvez attacher un KeyListener à n'importe quel composant.

Vous pouvez traiter ils frappes là et traiter l'action souhaitée:

Voir la tutorial pour un exemple complet:

+1

Vous pourriez mais c'est pas le Swing a été ainsi conçu pour être utilisé. Swing a introduit InputMaps et ActionMaps à cette fin. – camickr

+0

@camickr: Au moins c'est une option :) Merci pour le commentaire;) – OscarRyz

0

Non seulement les boutons peuvent comporter des mnémoniques. Les mnémoniques (raccourcis) pour les autres composants peuvent être spécifiés indirectement via leurs étiquettes. Vous devez créer une étiquette pour le composant et setDisplayedMnemonic pour cela. Ensuite, vous attachez l'étiquette à un composant en utilisant setLabelFor. Le code ressemble à ceci:

JLabel lab1 = new JLabel("Text 1"); 
lab1.setDisplayedMnemonic('e'); 
JTextField tf1 = new JTextField(20); 
lab1.setLabelFor(tf1); 
Questions connexes