Maison > Java > javaDidacticiel > Comment récupérer les valeurs des boutons numériques dans une calculatrice AWT à l'aide de « getActionCommand() » ?

Comment récupérer les valeurs des boutons numériques dans une calculatrice AWT à l'aide de « getActionCommand() » ?

Linda Hamilton
Libérer: 2024-12-25 01:33:10
original
446 Les gens l'ont consulté

How to Retrieve Number Button Values in an AWT Calculator Using `getActionCommand()`?

Comment obtenir les valeurs des boutons à l'aide de getSource() dans AWT (devoir de calculatrice)

Dans ce devoir, vous êtes chargé de créer un calculatrice d'interface utilisateur graphique (GUI) simple. La calculatrice doit permettre à l'utilisateur de saisir deux nombres et de choisir une opération (addition, soustraction, multiplication ou division), puis d'afficher le résultat.

Le défi :

Au départ, vous avez essayé d'utiliser la méthode getSource() pour détecter sur quel bouton vous avez cliqué, mais cette approche n'a fonctionné que pour les boutons d'opération. Cependant, votre instructeur exige désormais que les chiffres soient également des boutons, tout comme dans une vraie calculatrice. Le problème est que vous ne pouvez pas déterminer la valeur de chaque bouton numérique en utilisant uniquement la méthode getSource().

Solution :

Pour surmonter ce défi et obtenir la valeur de chaque bouton numérique :

  1. Modifier la mise en page : Modifiez la disposition de votre interface graphique pour inclure également des boutons numériques. Placez les boutons numériques dans une disposition spécifique, telle que la disposition standard de la calculatrice.
  2. Attribuer des commandes d'action : Attribuez une commande d'action unique à chaque bouton numérique à l'aide de la méthode setActionCommand(). Par exemple, vous pouvez définir la commande d'action pour qu'elle soit le texte sur le bouton (par exemple, "1", "2", "3").
  3. Gérer les clics sur le bouton : Dans le actionPerformed() d'ActionListener, utilisez la méthode getActionCommand() pour obtenir la commande d'action associée au bouton sur lequel vous avez cliqué. La commande d'action sera la valeur du bouton.
  4. Traitez les valeurs : Une fois que vous avez obtenu les valeurs des boutons numériques, vous pouvez effectuer les opérations arithmétiques nécessaires (par exemple, addition, soustraction, etc.) pour calculer le résultat.

Code Exemple :

Voici un exemple de la façon dont vous pouvez mettre en œuvre cette solution :

import java.awt.*;
import java.awt.event.*;

public class NumberButtonCalculator implements ActionListener {

    // Create the GUI components
    private Button[] numberButtons = new Button[10];  // Number buttons
    private Button[] operationButtons = new Button[4];  // Operation buttons (+, -, *, /)
    private Label display;  // Display for result

    public NumberButtonCalculator() {
        // Initialize the GUI
        ... // Code to create the GUI components

        // Add action listeners to the number buttons
        for (Button button : numberButtons) {
            button.addActionListener(this);
        }

        // Add action listeners to the operation buttons
        for (Button button : operationButtons) {
            button.addActionListener(this);
        }
    }

    // Handle button clicks
    @Override
    public void actionPerformed(ActionEvent e) {
        // Get the source of the event
        Object source = e.getSource();

        // Handle number button clicks
        for (int i = 0; i < numberButtons.length; i++) {
            if (source == numberButtons[i]) {
                // Get the value of the number button
                int value = Integer.parseInt(numberButtons[i].getLabel());
                // Process the value...
            }
        }

        // Handle operation button clicks
        for (int i = 0; i < operationButtons.length; i++) {
            if (source == operationButtons[i]) {
                // Get the operation type
                String operation = operationButtons[i].getLabel();
                // Process the operation...
            }
        }
    }

    // ... // Other code
}
Copier après la connexion

Avec cette approche, vous pouvez récupérer les valeurs des touches numériques en vérifiant le getSource( ) puis en utilisant la méthode getActionCommand() pour obtenir la commande d'action associée, qui représente la valeur du bouton.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal