Rumah >Java >javaTutorial >Bagaimana untuk Mendapatkan Nilai Butang Nombor dalam Kalkulator AWT Menggunakan `getActionCommand()`?
Cara Mendapatkan Nilai Butang Menggunakan getSource() dalam AWT (Kalkulator Kerja Rumah)
Dalam tugasan kerja rumah ini, anda ditugaskan untuk mencipta kalkulator antara muka pengguna grafik mudah (GUI). Kalkulator harus membenarkan pengguna memasukkan dua nombor dan memilih operasi (tambah, tolak, darab atau bahagi) dan kemudian memaparkan hasilnya.
Cabaran:
Pada mulanya, anda cuba menggunakan kaedah getSource() untuk mengesan butang yang diklik, tetapi pendekatan ini hanya berfungsi untuk butang operasi. Walau bagaimanapun, kini pengajar anda memerlukan nombor itu juga harus berupa butang, sama seperti dalam kalkulator sebenar. Isunya ialah anda tidak boleh menentukan nilai setiap butang nombor menggunakan kaedah getSource() sahaja.
Penyelesaian:
Untuk mengatasi cabaran ini dan mendapatkan nilai setiap butang nombor:
Kod Contoh:
Berikut ialah contoh bagaimana anda boleh melaksanakan penyelesaian ini:
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 }
Dengan pendekatan ini, anda boleh mendapatkan semula nilai butang nombor dengan menyemak getSource( ) dan kemudian menggunakan kaedah getActionCommand() untuk mendapatkan arahan tindakan yang berkaitan, yang mewakili nilai butang.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai Butang Nombor dalam Kalkulator AWT Menggunakan `getActionCommand()`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!