Tạo Máy Tính đơn Giản Bằng Java Swing | Tìm ở đây

Tạo máy tính đơn giản bằng Java Swing

Đề bài: Viết chương trình có giao diện gồm 3 TextField dùng để chứa 2 toán hạng và 1 kết quả; 4 Button biểu diễn 4 phép toán Cộng, Trừ, Nhân và Chia. Mỗi khi người dùng ấn chuột vào một phép toán, chương trình sẽ tính toán và hiển thị ở trường TextField tương ứng. Yêu cầu kiến thức:

  • Kế thừa và triển khai các phương thức đã được đề ra ở các lớp cha
  • Phân tích và thiết kế các đối tượng trên giao diện là các components
  • Hiểu rõ bản chất cách hoạt động các đối tượng

Cấu trúc thư mục: src |——buildUI    |——SimpleCalculator.java |——usingUI    |——MainClass.java Code tham khảo dưới đây được viết trên JDK ver 8.x: File SimpleCalculator.java:

package buildUI; import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class SimpleCalculator extends JFrame implements ActionListener { // Khai bao 4 button private JButton btnCong; private JButton btnTru; private JButton btnNhan; private JButton btnChia; // Khai bao 3 textfield chua 2 so private JTextField tfNum1; private JTextField tfNum2; // Khai bao1 textfield hien thi ket qua private JTextField tfResult; // Khai bao container private Container cont; // Khai bao cac panel de gom nhom cac component private JPanel panel1, panel2; // Ham khoi tao public SimpleCalculator(String title) { super(title); cont = this.getContentPane(); // Tao cac thanh phan tren giao dien khoi tao JLabel lbNum1 = new JLabel("Enter Number 1: "); tfNum1 = new JTextField(); JLabel lbNum2 = new JLabel("Enter Number 2: "); tfNum2 = new JTextField(); JLabel lbResult = new JLabel("Result: "); tfResult = new JTextField(); // Vo hieu qua nhap cua tfResult tfResult.setEditable(false); // Dat cac component vao cac panel thich hop panel1 = new JPanel(); panel1.setLayout(new GridLayout(3, 2)); // Layout gom 3 hang 2 cot panel1.add(lbNum1); panel1.add(tfNum1); panel1.add(lbNum2); panel1.add(tfNum2); panel1.add(lbResult); panel1.add(tfResult); // Tao 4 nut cho 4 phep toan btnCong = new JButton("+"); btnTru = new JButton("-"); btnNhan = new JButton("*"); btnChia = new JButton("/"); // Panel2 chua 5 4 phep toan panel2 = new JPanel(); panel2.add(btnCong); panel2.add(btnTru); panel2.add(btnNhan); panel2.add(btnChia); // Dat panel 1 vao vung chinh giua cua container cont.add(panel1); // Dat panel 2 vao vung ben duoi cont.add(panel2, "South"); // Gan Listen cho cac button tuong ung btnCong.addActionListener(this); btnTru.addActionListener(this); btnNhan.addActionListener(this); btnChia.addActionListener(this); // Thiet lap kich thuoc va hien thi this.pack(); this.setVisible(true); } // Ham thuc hien phep cong public void cong() { // Lay tu du lieu double num1 = Double.parseDouble(tfNum1.getText()); double num2 = Double.parseDouble(tfNum2.getText()); // Tinh toan double result = num1 + num2; // Hien thi ket qua tfResult.setText(String.valueOf(result)); } // Ham thuc hien phep tru public void tru() { // Lay tu du lieu double num1 = Double.parseDouble(tfNum1.getText()); double num2 = Double.parseDouble(tfNum2.getText()); // Tinh toan double result = num1 - num2; // Hien thi ket qua tfResult.setText(String.valueOf(result)); } // Ham thuc hien phep nhan public void nhan() { // Lay tu du lieu double num1 = Double.parseDouble(tfNum1.getText()); double num2 = Double.parseDouble(tfNum2.getText()); // Tinh toan double result = num1 * num2; // Hien thi ket qua tfResult.setText(String.valueOf(result)); } // Ham thuc hien phep chia public void chia() { // Lay tu du lieu double num1 = Double.parseDouble(tfNum1.getText()); double num2 = Double.parseDouble(tfNum2.getText()); // Tinh toan double result = num1 / num2; // Hien thi ket qua tfResult.setText(String.valueOf(result)); } @Override public void actionPerformed(ActionEvent e) { // Khi click btnCong, btnTru, btnNhan, btnChia if (e.getActionCommand() == "+") { cong(); } else if (e.getActionCommand() == "-") { tru(); } else if (e.getActionCommand() == "*") { nhan(); } else if (e.getActionCommand() == "/") { chia(); } } }

File MainClass.java:

package usingUI; import buildUI.SimpleCalculator; public class MainClass { public static void main(String[] args) { // Khai bao doi tuong SimpleCalculator slculator = new SimpleCalculator("Simple Calculator"); } }

Kết quả chương trình: Kết luận:

  • Bạn có thể tham khảo thêm khóa học lập trình Java từ cơ bản đến nâng cao. Xem tại đây
  • Bạn có thể tham khảo thêm khóa học lập trình C từ cơ bản đến nâng cao. Xem tại đây
  • Bạn có thể tham khảo thêm khóa học Thành thạo lập trình C#. Xem tại đây
  • Bạn có thể tham khảo thêm khóa học Ôn tập OOP cơ bản trong Java. Xem tại đây

Tags: lap trinhLập trình Java

  • Next story Tạo máy tính bỏ túi bằng Java Swing
  • Previous story Đổi màu giao diện trong Java Swing

You may also like...

  • Lập trình Java căn bản 0

    Xây dựng lớp và đối tượng Time trong Java

    30/06/2021

    by Hoàng Tuân · Published 30/06/2021

  • Lập trình Java căn bản 0

    Giá trị nhỏ nhất của mảng nguyên trong Java

    23/06/2021

    by Hoàng Tuân · Published 23/06/2021

  • Lập trình Java căn bản 0

    Kiểm tra định dạng số nguyên dương trong Java

    25/07/2021

    by Hoàng Tuân · Published 25/07/2021

Để lại một bình luận Hủy

Bạn phải đăng nhập để gửi bình luận.

Từ khóa » Giải Phương Trình Bậc 2 Java Swing Kéo Thả