java swing开发最简易计算器源代码

原文:java swing开发最简易计算器源代码

源代码下载地址:http://www.zuidaima.com/share/1550463496948736.htm

用java swing写的简易计算器

/**
*@author www.zuidaima.com
*/
package com.zuidaima.swing;

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

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.KeyStroke;
import java.awt.event.KeyEvent;
import java.awt.event.InputEvent;
import javax.swing.JSeparator;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class JSQFrame extends JFrame
{

	private JPanel	contentPane;
	/**
	 * 计算结果
	 */
	private JTextField txtJiSuanJieGuo;
	/**
	 * 第一个数
	 */
	double shuA;
	/**
	 * 第二个数
	 */
	double  shuB;

	double shu;

	//f

	/**
	 * Launch the application.
	 */
	public static void main(String[] args)
	{
		EventQueue.invokeLater(new Runnable()
		{
			public void run()
			{
				try
				{
					JSQFrame frame = new JSQFrame();
					frame.setVisible(true);
				}
				catch (Exception e)
				{
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public JSQFrame()
	{
		setResizable(false);
		setTitle("\u8BA1\u7B97\u5668");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 362, 347);

		JMenuBar menuBar = new JMenuBar();
		setJMenuBar(menuBar);

		JMenu mnNewMenu = new JMenu("\u7F16\u8F91(E)");
		mnNewMenu.setMnemonic('E');
		menuBar.add(mnNewMenu);

		JMenuItem mntmNewMenuItem = new JMenuItem("\u590D\u5236(C)");
		mntmNewMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK));
		mnNewMenu.add(mntmNewMenuItem);

		JMenuItem mntmNewMenuItem_1 = new JMenuItem("\u7C98\u8D34(V)");
		mntmNewMenuItem_1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK));
		mnNewMenu.add(mntmNewMenuItem_1);

		JMenu mnNewMenu_1 = new JMenu("\u67E5\u770B");
		menuBar.add(mnNewMenu_1);

		JMenuItem mntmNewMenuItem_3 = new JMenuItem("\u6807\u51C6\u578B(T)");
		mntmNewMenuItem_3.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_T, 0));
		mnNewMenu_1.add(mntmNewMenuItem_3);

		JMenuItem mntmNewMenuItem_4 = new JMenuItem("\u79D1\u5B66\u578B(S)");
		mntmNewMenuItem_4.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, 0));
		mnNewMenu_1.add(mntmNewMenuItem_4);

		JSeparator separator_1 = new JSeparator();
		mnNewMenu_1.add(separator_1);

		JMenuItem mntmNewMenuItem_5 = new JMenuItem("\u6570\u5B57\u5206\u7EC4(I)");
		mntmNewMenuItem_5.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_I, 0));
		mnNewMenu_1.add(mntmNewMenuItem_5);

		JMenu mnNewMenu_2 = new JMenu("\u5E2E\u52A9(H)");
		mnNewMenu_2.setMnemonic('H');
		menuBar.add(mnNewMenu_2);

		JMenuItem mntmNewMenuItem_6 = new JMenuItem("\u5E2E\u52A9\u4E3B\u9898(H)");
		mntmNewMenuItem_6.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H, 0));
		mnNewMenu_2.add(mntmNewMenuItem_6);

		JSeparator separator = new JSeparator();
		mnNewMenu_2.add(separator);

		JMenuItem mntmNewMenuItem_7 = new JMenuItem("\u5173\u4E8E\u8BA1\u7B97\u5668(A)");
		mntmNewMenuItem_7.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, 0));
		mnNewMenu_2.add(mntmNewMenuItem_7);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);

		txtJiSuanJieGuo = new JTextField();
		txtJiSuanJieGuo.setHorizontalAlignment(SwingConstants.RIGHT);
		txtJiSuanJieGuo.setToolTipText("\u8BA1\u7B97\u7ED3\u679C");
		txtJiSuanJieGuo.setText("0.");
		txtJiSuanJieGuo.setBounds(10, 0, 334, 29);
		contentPane.add(txtJiSuanJieGuo);
		txtJiSuanJieGuo.setColumns(20);

		JButton btn7 = new JButton("7");
		btn7.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("7");
			}
		});
		btn7.setBounds(40, 64, 52, 37);
		contentPane.add(btn7);

		JButton btnChu = new JButton("4");
		btnChu.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("4");
			}
		});
		btnChu.setBounds(40, 119, 52, 37);
		contentPane.add(btnChu);

		JButton btn1 = new JButton("1");
		btn1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				//TODO 按下1
				txtJiSuanJieGuo.setText("1");
			}
		});
		btn1.setBounds(40, 178, 52, 37);
		contentPane.add(btn1);

		JButton btn0 = new JButton("0");
		btn0.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("0");
			}
		});
		btn0.setBounds(40, 236, 52, 37);
		contentPane.add(btn0);

		JButton btn8 = new JButton("8");
		btn8.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("8");
			}
		});
		btn8.setBounds(102, 64, 52, 37);
		contentPane.add(btn8);

		JButton btn5 = new JButton("5");
		btn5.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("5");
			}
		});
		btn5.setBounds(102, 119, 52, 37);
		contentPane.add(btn5);

		JButton btn2 = new JButton("2");
		btn2.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("2");
			}
		});
		btn2.setBounds(102, 178, 52, 37);
		contentPane.add(btn2);

		JButton btnZhengYuFu = new JButton("+/-");
		btnZhengYuFu.setBounds(102, 236, 52, 37);
		contentPane.add(btnZhengYuFu);

		JButton btn9 = new JButton("9");
		btn9.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("9");
			}
		});
		btn9.setBounds(164, 64, 52, 37);
		contentPane.add(btn9);

		JButton btn6 = new JButton("6");
		btn6.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("6");
			}
		});
		btn6.setBounds(164, 119, 52, 37);
		contentPane.add(btn6);

		JButton btn3 = new JButton("3");
		btn3.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText("3");
			}
		});
		btn3.setBounds(164, 178, 52, 37);
		contentPane.add(btn3);

		JButton btnDian = new JButton(".");
		btnDian.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				txtJiSuanJieGuo.setText(""+txtJiSuanJieGuo.getText()+".");
			}
		});
		btnDian.setBounds(164, 236, 52, 37);
		contentPane.add(btnDian);

		JButton button_11 = new JButton("/");
		button_11.setBounds(226, 64, 52, 37);
		contentPane.add(button_11);

		JButton btn7Cheng = new JButton("*");
		btn7Cheng.setBounds(226, 119, 52, 37);
		contentPane.add(btn7Cheng);

		JButton btnJian = new JButton("-");
		btnJian.setBounds(226, 178, 52, 37);
		contentPane.add(btnJian);

		JButton btnJia = new JButton("+");
		btnJia.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				//+++++
				txtJiSuanJieGuo.setText(""+txtJiSuanJieGuo.getText()+"+");
			}
		});
		btnJia.setBounds(226, 236, 52, 37);
		contentPane.add(btnJia);

		JButton btnQuYu = new JButton("%");
		btnQuYu.setBounds(288, 119, 52, 37);
		contentPane.add(btnQuYu);

		JButton btnDaoShu = new JButton("1/x");
		btnDaoShu.setBounds(288, 178, 52, 37);
		contentPane.add(btnDaoShu);

		JButton btnDeng = new JButton("=");
		btnDeng.setBounds(288, 236, 52, 37);
		contentPane.add(btnDeng);

		JButton btnSqrt = new JButton("sqr");
		btnSqrt.setBounds(288, 64, 52, 37);
		contentPane.add(btnSqrt);

		JButton btnClear = new JButton("clear");
		btnClear.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				//TODO 清空
				txtJiSuanJieGuo.setText("0.");
			}
		});
		btnClear.setBounds(251, 31, 93, 23);
		contentPane.add(btnClear);
	}
}
时间: 11-03