Maison >Java >javaDidacticiel >Comment attribuer des raccourcis clavier aux JButtons en Java ?

Comment attribuer des raccourcis clavier aux JButtons en Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-24 03:57:31529parcourir

How to Assign Keyboard Shortcuts to JButtons in Java?

Implémentation des touches de raccourci pour les JButtons en Java

Problème :

Vous souhaitez attribuer un raccourci clavier vers un JButton, lui permettant de déclencher une action lorsqu'une touche spécifique est enfoncée. Par exemple, un raccourci « Supprimer » doit cliquer sur le JButton.

Solution :

Utilisation des actions et des liaisons de touches

Pour attribuer un raccourci clavier à un JButton, vous devez :

  1. Créer une action : Définir une action qui sera liée au JButton et exécutée lorsque la touche de raccourci est enfoncée.
  2. Lier l'action au JButton : Associer l'action au JButton à l'aide de la méthode addActionListener du JButton.
  3. Lier une touche à l'action : Connectez l'action avec un raccourci clavier spécifique à l'aide des méthodes getInputMap et getActionMap. Ces méthodes sont fournies par le conteneur qui contient le JButton.

Exemple de code :

Le code suivant montre comment attribuer une touche de raccourci à un JButton :

<code class="java">import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class CalculatorPanel extends JPanel {

    // Define an action for numeric keys
    Action numberAction = new AbstractAction() {
        @Override
        public void actionPerformed(ActionEvent e) {
            display.replaceSelection(e.getActionCommand());
        }
    };

    // Main method
    public static void main(String[] args) {
        JFrame frame = new JFrame("Calculator Panel");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.add(new CalculatorPanel());
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }
}</code>

Dans cet exemple, le numberAction est lié aux boutons numériques (0-9) et associé aux codes des touches "NUMPAD". Lorsqu'une touche numérique ou NUMPAD est enfoncée, la numberAction est déclenchée et le numéro correspondant s'affiche dans la fenêtre de la calculatrice.

En suivant ces étapes et en tirant parti des méthodes Swing appropriées, vous pouvez attribuer efficacement des raccourcis clavier aux JButtons et améliorer l'expérience utilisateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn