如何在AWT 中使用getSource() 取得按鈕值(計算器作業)
在此作業中,您的任務是建立作業一個簡單的圖形使用者介面(GUI)計算器。計算器應允許使用者輸入兩個數字並選擇運算(加法、減法、乘法或除法),然後顯示結果。
挑戰:
最初,您嘗試使用 getSource() 方法來偵測點擊了哪個按鈕,但這種方法僅適用於操作按鈕。但是,現在您的老師要求數字也應該是按鈕,就像真正的計算器一樣。問題是您無法單獨使用 getSource() 方法來確定每個數字按鈕的值。
解決方案:
克服此挑戰並取得每個數字按鈕:
程式碼範例:
以下是如何實作此解決方案的範例:
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 }
使用此方法,您可以透過檢查getSource( 來檢索數字按鈕的值),然後使用getActionCommand() 方法取得關聯的操作命令,該命令代表按鈕的值。
以上是如何使用 getActionCommand() 檢索 AWT 計算器中的數字按鈕值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!