Java|Java绘制制作简易计算器

用Java做的简易计算器


import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.Button;
import java.awt.Panel;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Font;
import javax.swing.SwingConstants;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.Window.Type;
import java.awt.Dialog.ModalExclusionType;
import java.awt.Point;
import java.awt.ComponentOrientation;

public class Cal extends JFrame {

	private JPanel contentPane;
	private JTextField text;
	private int i = -1;		//i用来控制小数点的输入
	private String opr;
	private double op1,op2;
	private String result;
	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Cal frame = new Cal();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public Cal() {
		setLocationByPlatform(true);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setTitle("\u5510\u5B50\u817E\u7684\u8BA1\u7B97\u5668");
		setBounds(100, 100, 315, 430);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		Button but_ac = new Button("AC");
		but_ac.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				text.setText("");
			}
		});
		but_ac.setBounds(10, 78, 64, 54);
		contentPane.add(but_ac);
		
		Button but_del = new Button("\u2190");
		but_del.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				String s = text.getText();
				text.setText(s.substring(0,s.length()-1));
			}
		});
		but_del.setBounds(80, 78, 64, 54);
		contentPane.add(but_del);
		
		Button but_chu = new Button("\u00F7");
		but_chu.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				opr = "/";
				i = -1;
				text.setText(text.getText()+"/");
			}
		});
		but_chu.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
			}
		});
		but_chu.setBounds(150, 78, 64, 54);
		contentPane.add(but_chu);
		
		Button but_7 = new Button("7");
		but_7.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"7");
			}
		});
		but_7.setBounds(10, 138, 64, 54);
		contentPane.add(but_7);
		
		Button but_8 = new Button("8");
		but_8.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"8");
			}
		});
		but_8.setBounds(80, 138, 64, 54);
		contentPane.add(but_8);
		
		Button but_9 = new Button("9");
		but_9.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"9");
			}
		});
		but_9.setBounds(150, 138, 64, 54);
		contentPane.add(but_9);
		
		Button but_cheng = new Button("\u00D7");
		but_cheng.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				opr = "*";
				i = -1;
				text.setText(text.getText()+"*");
			}
		});
		but_cheng.setBounds(220, 78, 64, 54);
		contentPane.add(but_cheng);
		
		Button but_4 = new Button("4");
		but_4.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"4");
			}
		});
		but_4.setBounds(10, 198, 64, 54);
		contentPane.add(but_4);
		
		Button but_5 = new Button("5");
		but_5.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"5");
			}
		}); 
		but_5.setBounds(80, 198, 64, 54);
		contentPane.add(but_5);
		
		Button but_6 = new Button("6");
		but_6.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"6");
			}
		});
		but_6.setBounds(150, 198, 64, 54);
		contentPane.add(but_6);
		
		Button but_jian = new Button("-");
		but_jian.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				opr = "-";
				i = -1;
				text.setText(text.getText()+"-");
			}
		});
		but_jian.setBounds(220, 138, 64, 54);
		contentPane.add(but_jian);
		
		Button but_1 = new Button("1");
		but_1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
			}
		});
		but_1.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"1");
			}
		});
		but_1.setBounds(10, 258, 64, 54);
		contentPane.add(but_1);
		
		Button but_2 = new Button("2");
		but_2.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"2");
			}
		});
		but_2.setBounds(80, 258, 64, 54);
		contentPane.add(but_2);
		
		Button but_3 = new Button("3");
		but_3.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"3");
			}
		});
		but_3.setBounds(150, 258, 64, 54);
		contentPane.add(but_3);
		
		Button but_jia = new Button("+");
		but_jia.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				opr = "+";
				i = -1;
				text.setText(text.getText()+"+");
			}
		});
		but_jia.setBounds(220, 198, 64, 54);
		contentPane.add(but_jia);
		
		Button but_0 = new Button("0");
		but_0.addMouseListener(new MouseAdapter() {
			
			public void mouseClicked(MouseEvent e) {
				i++;
				text.setText(text.getText()+"0");
			}
		});
		but_0.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
			}
		});
		but_0.setBounds(10, 318, 134, 54);
		contentPane.add(but_0);
		
		Button but_dian = new Button(".");
		but_dian.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				if(i>=0&&i<10)
					text.setText(text.getText()+".");
				i = 20;
			}
		});
		but_dian.setFont(new Font("Dialog", Font.BOLD, 12));
		but_dian.setBounds(150, 318, 64, 54);
		contentPane.add(but_dian);
		
		Button but_deng = new Button("=");
		but_deng.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				String str = text.getText();
				String[] op;
				switch(opr)
				{
				case "+":
					op = str.split("\\+");
					op1 = Double.parseDouble(op[0]);
					op2 = Double.parseDouble(op[1]);
					result = String.valueOf(op1 + op2);
					text.setText(result);
					break;
				case "-":
					op = str.split("\\-");
					op1 = Double.parseDouble(op[0]);
					op2 = Double.parseDouble(op[1]);
					result = String.valueOf(op1 - op2);
					text.setText(result);
					break;
				case "*":
					op = str.split("\\*");
					op1 = Double.parseDouble(op[0]);
					op2 = Double.parseDouble(op[1]);
					result = String.valueOf(op1 * op2);
					text.setText(result);
					break;
				case "/":
					op = str.split("\\/");
					op1 = Double.parseDouble(op[0]);
					op2 = Double.parseDouble(op[1]);
					result = String.valueOf(op1 / op2);
					text.setText(result);
					break;
				}
			}
		});
		but_deng.setBounds(219, 258, 64, 114);
		contentPane.add(but_deng);
		
		text = new JTextField();
		text.setEditable(false);
		text.setHorizontalAlignment(SwingConstants.RIGHT);
		text.setFont(new Font("楷体", Font.PLAIN, 35));
		text.setBounds(10, 13, 274, 59);
		contentPane.add(text);
		text.setColumns(10);
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值