教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 实用文档 >

科学计算器程序Java代码

来源:网络收集 时间:2026-08-15
导读: import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.DecimalFormat; impo

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Font;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.text.DecimalFormat;

import javax.swing.BorderFactory;

import javax.swing.ButtonGroup;

import javax.swing.JButton;

import javax.swing.JCheckBoxMenuItem;

import javax.swing.JFrame;

import javax.swing.JMenu;

import javax.swing.JMenuBar;

import javax.swing.JMenuItem;

import javax.swing.JPanel;

import javax.swing.JRadioButtonMenuItem;

import javax.swing.JTextField;

public class Calucator extends JFrame {

private JTextField tf;

private JPanel panel1, panel2, panel3, panel4;

private JMenuBar myBar;

private JMenu menu1, menu2, menu3;

private JMenuItem editItem1, editItem2, help1, help2, help3;

private JRadioButtonMenuItem seeItem1, seeItem2;//单选框

private JCheckBoxMenuItem seeItem3;//复选框

private ButtonGroup bgb;

private String back;

private boolean IfResult = true, flag = false;

private String oper = "=";

private double result = 0;

private Num numActionListener;

private DecimalFormat df;

public Calucator(){

super("科学计算器");//设置标题栏

df = new DecimalFormat("#.####");//保留四位小数

this.setLayout(new BorderLayout(10, 5));

panel1 = new JPanel(new GridLayout(1, 3, 10, 10)); panel2 = new JPanel(new GridLayout(5, 6, 5, 5));//5行6列panel3 = new JPanel(new GridLayout(5, 1, 5, 5));

panel4 = new JPanel(new BorderLayout(5, 5));

/**

*菜单栏

*/

myBar = new JMenuBar();

menu1 = new JMenu("编辑(E)");

menu2 = new JMenu("查看(V)");

menu3 = new JMenu("帮助(H)");

menu1.setFont(new Font("宋体", Font.PLAIN, 12));

menu2.setFont(new Font("宋体", Font.PLAIN, 12));

menu3.setFont(new Font("宋体", Font.PLAIN, 12));

/**

*编辑栏

*/

editItem1 = new JMenuItem("复制(C) Ctrl+C");

editItem2 = new JMenuItem("粘贴(P) Ctrl+V");

editItem1.setFont(new Font("宋体",Font.PLAIN,12)); editItem2.setFont(new Font("宋体",Font.PLAIN,12));

/**

*查看栏

*/

seeItem1 = new JRadioButtonMenuItem("科学型(T)"); seeItem2 = new JRadioButtonMenuItem("标准型(S)"); seeItem3 = new JCheckBoxMenuItem("数字分组(I)");

seeItem1.setFont(new Font("宋体",Font.PLAIN,12)); seeItem2.setFont(new Font("宋体",Font.PLAIN,12)); seeItem3.setFont(new Font("宋体",Font.PLAIN,12));

/**

*帮助栏

*/

help1 = new JMenuItem("帮助主题(H)");

help2 = new JMenuItem("关于计算器(A)");

help1.setFont(new Font("宋体",Font.PLAIN,12));

help2.setFont(new Font("宋体",Font.PLAIN,12));

bgb = new ButtonGroup();//选项组

menu1.add(editItem1);

menu1.add(editItem2);

menu2.add(seeItem1);

menu2.add(seeItem2);

menu2.addSeparator();//添加一条分割线

menu2.add(seeItem3);

menu3.add(help1);

menu3.addSeparator();//添加一条分割线

menu3.add(help2);

myBar.add(menu1);

myBar.add(menu2);

myBar.add(menu3);

this.setJMenuBar(myBar);

numActionListener = new Num();//实现数字监听

/**

*文本域,即为计算器的屏幕显示区域

*/

tf = new JTextField();

tf.setEditable(false);//文本区域不可编辑

tf.setBackground(Color.white);//文本区域的背景色

tf.setHorizontalAlignment(JTextField.RIGHT);//文字右对齐tf.setText("0");

tf.setBorder(BorderFactory.createLoweredBevelBorder());

init();//对计算器进行初始化

}

/**

*初始化操作

*添加按钮

*/

private void init(){

addButton(panel1, "Backspace", new Clear(), Color.red); addButton(panel1, "CE", new Clear(), Color.red); addButton(panel1, "C", new Clear(), Color.red);

addButton(panel2, "1/x", new Signs(), Color.magenta); addButton(panel2, "log", new Signs(), Color.magenta); addButton(panel2, "7", numActionListener, Color.blue); addButton(panel2, "8", numActionListener, Color.blue); addButton(panel2, "9", numActionListener, Color.blue); addButton(panel2, "÷", new Signs(), Color.red);

addButton(panel2, "n!", new Signs(), Color.magenta); addButton(panel2, "sqrt", new Signs(), Color.magenta); addButton(panel2, "4", numActionListener, Color.blue); addButton(panel2, "5", numActionListener, Color.blue); addButton(panel2, "6", numActionListener, Color.blue); addButton(panel2, "×", new Signs(), Color.red);

addButton(panel2, "sin", new Signs(), Color.magenta); addButton(panel2, "x^2", new Signs(), Color.magenta); addButton(panel2, "1", numActionListener, Color.blue); addButton(panel2, "2", numActionListener, Color.blue); addButton(panel2, "3", numActionListener, Color.blue); addButton(panel2, "-", new Signs(), Color.red);

addButton(panel2, "cos", new Signs(), Color.magenta); addButton(panel2, "x^3", new Signs(), Color.magenta); addButton(panel2, "0", numActionListener, Color.blue); addButton(panel2, "-/+", new Clear(), Color.blue); addButton(panel2, ".", new Dot(), Color.blue);

addButton(panel2, "+", new Signs(), Color.red);

addButton(panel2, "tan", new Signs(), Color.magenta); addButton(panel2, "%", new Signs(), Color.magenta); addButton(panel2, "π", numActionListener, Color.orange); addButton(panel2, "e", numActionListener, Col …… 此处隐藏:7653字,全部文档内容请下载后查看。喜欢就下载吧 ……

科学计算器程序Java代码.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1109208.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)