小型计算器报告
vb 简易计算器实验报告

简易计算器课程设计报告一、实验目的:模拟计算器的功能。
系统启动后, 先清屏, 再在显示屏右侧显示0字样, 系统仅接收数字键、加减乘除键、退格键、C键(复位)、=或回车键、ESC键(退出系统)作为有效按键, 其余按键不响应。
按键后屏幕显示效果要达到一般计算器显示屏的同样效果。
不要求设计一般计算器上都具有的M功能。
二、实验设计内容及思想:首先, 创建一个主体框架: 建立程序的主要界面后, 系统自动生成界面的主要窗口生成代码。
对于每个按钮的的代码段中, 分别添加事件触发的处理代码。
分别设立三个显示屏, 第一个显示屏作为“被加数”框, 第二个显示屏作为“加数”框, 第三个显示屏则作为输出框。
四则运算时直接采用计算表达式。
所以, 优先级和运算规则皆宜考虑在内。
在进行除法运算时, 若遇到除数为0, 则运用条件语句执行, 并在输出显示屏上输出“E”。
三角函数、指数、对数、整除、取余等运算, 也是运用类似手法。
考虑到计算器的操作简便性, 所以加入了复位和退出按钮。
三、源程序文件:Private Sub Command1_Click()Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x + yEnd SubPrivate Sub Command10_Click()Dim x As Integerx = Text1.TextText3.Text = Cos(x)End SubPrivate Sub Command11_Click()Dim x As Integerx = Text1.TextText3.Text = Tan(x)End SubPrivate Sub Command12_Click()Dim x As Integerx = Text1.TextText3.Text = Atn(x)End SubPrivate Sub Command13_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x ^ yEnd SubPrivate Sub Command14_Click() Dim x As Integerx = Text1.TextIf x <= 0 ThenText3.Text = "输入错误"ElseText3.Text = Log(x)End IfEnd SubPrivate Sub Command15_Click() Text3.Text = "此按钮仅作装饰用" End SubPrivate Sub Command2_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x - yEnd SubPrivate Sub Command3_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x * yEnd SubPrivate Sub Command4_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextIf y = 0 ThenText3.Text = "E"ElseText3.Text = x / yEnd IfEnd SubPrivate Sub Command5_Click()Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x \ yEnd SubPrivate Sub Command6_Click()Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x Mod yEnd SubPrivate Sub Command7_Click()Text1.Text = ""Text2.Text = ""Text3.Text = " 0" End SubPrivate Sub Command8_Click()EndEnd SubPrivate Sub Command9_Click()Dim x As Integerx = Text1.TextText3.Text = Sin(x)End Sub源代码截图:四、运行结果演示: 加法演示:减法演示: 乘法演示:除法演示:能够整除: 不能够整除:除数为零:。
简单计算器实验报告

简单计算器实验报告简单计算器实验报告引言:在现代社会,计算器已经成为人们生活中不可或缺的工具之一。
无论是在学校、办公室还是家庭,计算器都扮演着重要的角色。
本实验旨在设计和构建一个简单的计算器,并通过实验验证其功能和准确性。
实验步骤:1. 设计计算器的外观和功能:我们首先对计算器进行了外观设计,选择了简洁、易于使用的界面。
然后确定了计算器的基本功能,包括加法、减法、乘法和除法。
2. 选择合适的硬件和软件:为了构建计算器,我们选择了合适的硬件和软件。
硬件方面,我们选用了一块Arduino开发板、液晶显示屏和按键。
软件方面,我们使用了Arduino编程语言。
3. 连接硬件和编写代码:我们将液晶显示屏和按键与Arduino开发板连接起来,并编写了相应的代码。
代码中包括了计算器的逻辑运算和界面显示。
4. 测试计算器的功能和准确性:在完成硬件连接和代码编写后,我们对计算器进行了测试。
我们输入了一系列的算术表达式,包括简单的加减乘除运算,以及复杂的多步运算。
通过与手动计算的结果进行对比,我们验证了计算器的功能和准确性。
实验结果:经过多次测试,我们的计算器表现出了良好的功能和准确性。
无论是简单的加法还是复杂的多步运算,计算器都能够正确地给出结果。
液晶显示屏清晰地显示了算术表达式和计算结果,而按键的响应速度也非常迅速。
讨论:虽然我们的计算器在功能和准确性方面表现出色,但仍有一些改进的空间。
首先,我们可以增加更多的功能,如开方、求余等。
其次,我们可以改进界面设计,使其更加美观和易于使用。
此外,我们还可以考虑加入更强大的处理器和更大的内存,以提高计算器的性能。
结论:通过本次实验,我们成功设计和构建了一个简单的计算器,并验证了其功能和准确性。
计算器在各种算术运算中表现出色,并且具有清晰的界面和快速的响应速度。
然而,我们也意识到计算器仍有改进的空间,包括增加更多功能和改进界面设计。
总的来说,本次实验为我们深入了解计算器的原理和构造提供了宝贵的经验。
简易计算器实验报告

简易计算器实验报告简易计算器实验报告引言:计算器是我们日常生活中常用的工具之一。
它可以帮助我们进行简单的数学运算,提高计算的效率。
在本次实验中,我们将设计并制作一台简易计算器,通过实践来掌握计算器的原理和工作原理。
实验目的:1. 了解计算器的基本原理和工作原理;2. 掌握计算器的设计和制作方法;3. 提高动手能力和创造力。
实验材料:1. 电路板;2. 按键;3. LED显示屏;4. 电容;5. 电阻;6. 电源。
实验步骤:1. 连接电路板和电源,确保电路板能够正常工作;2. 将按键连接到电路板上,用于输入数字和运算符;3. 连接LED显示屏,用于显示计算结果;4. 添加电容和电阻,用于控制电路的稳定性和电流;5. 调试电路,确保计算器能够正确运行。
实验结果:经过一番调试,我们成功制作出了一台简易计算器。
它可以进行基本的加减乘除运算,并且在LED显示屏上显示结果。
通过按键输入数字和运算符,我们可以进行各种运算,从而得到我们想要的结果。
这台计算器虽然简单,但是它的实用性和便携性都非常高。
实验分析:在本次实验中,我们主要学习了计算器的基本原理和工作原理。
计算器是通过按键输入数字和运算符,然后经过电路的计算和控制,最终在显示屏上显示结果。
在电路中,电容和电阻的作用是为了保证电路的稳定性和电流的控制。
通过这个实验,我们更加深入地了解了计算器的内部结构和工作原理。
实验总结:通过本次实验,我们成功制作了一台简易计算器,并且对计算器的原理和工作原理有了更深入的了解。
实验过程中,我们不仅提高了动手能力和创造力,还培养了解决问题的能力。
计算器作为一种常见的工具,它的设计和制作过程并不复杂,但是它的实用性和便携性却非常高,为我们的生活带来了很大的便利。
未来展望:通过这次实验,我们对计算器的原理和工作原理有了初步的了解。
在未来,我们可以进一步深入研究计算器的更高级功能和更复杂的电路设计。
同时,我们也可以将这种简易计算器的设计思想应用到其他领域,如电子设备、机器人等,从而提高我们的创造力和创新能力。
简易计算器开题报告

简易计算器开题报告简易计算器开题报告一、引言计算器是一种广泛应用于日常生活和工作中的工具,它能够帮助人们进行简单的数学运算。
然而,随着科技的不断进步,计算器也发生了很大的改变。
在这个数字化时代,我们可以看到各种各样的高级计算器和手机应用程序,它们提供了更多的功能和更方便的使用体验。
然而,对于一些特定的场景和需求,简易计算器仍然具有一定的优势。
本文将探讨开发一款简易计算器的可行性和必要性。
二、背景分析1. 简易计算器的定义简易计算器是一种功能简单、操作便捷的计算工具,通常只包含基本的四则运算和一些常用函数。
它的界面简洁明了,适合快速计算和简单操作。
2. 现有计算器的不足尽管现有的高级计算器和手机应用程序提供了更多的功能和更方便的使用体验,但在某些情况下,它们可能过于复杂,不适合快速计算。
例如,在一些会计、商务、教育等场景中,人们更倾向于使用简单的计算器进行基本运算,以提高工作效率。
3. 简易计算器的优势简易计算器相对于高级计算器和手机应用程序而言,具有以下优势:- 操作简单:简易计算器通常只有几个按键,界面简洁明了,使用起来非常方便。
- 快速计算:简易计算器专注于基本运算,因此在处理简单的数学运算时更加迅速。
- 便携性:简易计算器体积小巧,便于携带,随时随地使用。
三、开发目标基于上述背景分析,我们的开发目标是设计和开发一款简易计算器,以满足以下需求:1. 提供基本的四则运算功能,包括加、减、乘、除。
2. 支持一些常用函数,如开方、求平方、求倒数等。
3. 界面简洁明了,操作简单方便。
4. 提供快速计算的能力,以提高工作效率。
5. 考虑到便携性,计划将其设计为小巧的手持设备。
四、技术实现1. 硬件需求为了实现简易计算器的开发目标,需要以下硬件设备:- 微处理器:选择一款适合嵌入式系统的微处理器,例如ARM Cortex-M系列。
- 显示屏:选用一款小巧而清晰的显示屏,以方便用户查看计算结果。
- 按键:设计合适的按键布局,以支持用户输入数字和操作符。
简单计算器设计报告

对象
ID
说明
文本编辑框
IDC_EDIT1
输入数字
下拉框
IDC_COMBOOP
运算符
文本编辑框
IDC_OK
输入数字
文本编辑框
IDC_EDIT3
运算结果输出
按钮
IDC_EXIT
退出键
设计界面
四、主要程序分析
1、字符判定函数
BOOL IsInt(TCHAR*str)
{
int i=atoi(str);
简单计算器设计报告
045
一、基本功能描述
通过文本编辑框实现基本整数的加减乘除运算
二、设计思路
如下图是整个程序进行的流程图,基本方法是在ItemText文本编辑框输入字符,程序对字符进行判断,若输入不是数字则提示错误。输入正常时,通过下拉框ComboBox_InsertString选择相应运算符。点击等号IDC_OK,即可得出运算结果。操作简便,算法简单。
}
通过ComboBox_InsertString插入要输入的运算符
4、主程序
字符获取
TCHAR str1[256];
TCHAR str2[256];
GetDlgItemText(hwnd,IDC_EDIT1,str1,sizeof(str1));
GetDlgItemText(hwnd,IDC_EDIT2,str2,sizeof(str2));
运算
switch(curIndex)
{
case 0:
{
i3=i1+i2;
}
break;
case 1:
{
i3=i1-i2;
}
break;
case 2:
51单片机简易计算器设计报告

51单片机简易计算器设计报告
本文将介绍51单片机简易计算器的设计报告。
该计算器通过
16位的LCD显示屏实现了基本计算功能,包括加、减、乘、除、取反、开方等。
1. 硬件设计
该计算器的核心部件是STC89C52单片机。
STC89C52是一种
高性能、低功耗的8位单片机,拥有8KB的Flash程序存储器和128字节的内部RAM,可提供多种功能和通讯接口。
通过
I/O口与LCD模块通讯,实现输出功能。
该计算器使用16位的LCD显示屏,显示范围为-99.99~99.99,共有6个数字位。
显示屏使用了ST7920控制器,可通过串行、并行等多种方式控制。
2. 软件设计
该计算器的软件设计主要包括三部分:键盘扫描,计算功能和LCD显示。
键盘扫描:该计算器采用4x5矩阵键盘,通过程序对键盘进行扫描,实现对不同按键的检测。
计算功能:该计算器可以实现基本的四则运算、取反、开方等功能。
对于四则运算,通过栈来实现计算,将运算符压入栈中,然后将操作数从栈中取出进行计算。
LCD显示:该计算器使用16位的LCD显示屏,通过程序控制数据和命令的传输,将计算结果显示在LCD屏幕上。
3. 总结
通过对51单片机简易计算器的设计报告,可以看出该计算器实现了基本的计算功能,通过硬件设计和软件设计相结合,将计算器的功能实现得十分完整。
该计算器的设计初步掌握了51单片机的应用,有助于后续项目的开展。
单片机实践简易计算器实验报告

单片机实践简易计算器实验报告本次实验的目的是通过单片机实现一个简易计算器,实现加减乘除四则运算。
在实验过程中,我们使用了STC89C52单片机,通过编写程序实现计算器的功能。
实验步骤:1. 确定硬件电路连接我们需要确定硬件电路连接。
本次实验使用的是STC89C52单片机,需要将其与LCD1602液晶屏、4x4矩阵键盘、蜂鸣器等硬件连接。
具体连接方式如下:STC89C52单片机:P0口:连接LCD1602液晶屏的数据线D0-D7P1口:连接LCD1602液晶屏的控制线RS、RW、EP2口:连接4x4矩阵键盘的行线R1-R4P3口:连接4x4矩阵键盘的列线C1-C4P4口:连接蜂鸣器2. 编写程序接下来,我们需要编写程序实现计算器的功能。
程序主要分为以下几个部分:(1)LCD1602液晶屏初始化(2)4x4矩阵键盘扫描(3)计算器功能实现(4)LCD1602液晶屏显示结果3. 调试程序编写完程序后,我们需要进行调试。
在调试过程中,我们需要注意以下几点:(1)检查硬件连接是否正确(2)检查程序是否有语法错误(3)检查程序是否能够正常运行4. 实验结果经过调试,我们成功实现了一个简易计算器。
在使用过程中,用户可以通过4x4矩阵键盘输入数字和运算符,计算器会自动进行计算,并在LCD1602液晶屏上显示结果。
同时,计算器还具有清零、退格等功能,方便用户进行操作。
总结:通过本次实验,我们学习了单片机的基本原理和编程方法,掌握了如何使用单片机实现一个简易计算器。
同时,我们还学习了如何进行硬件电路连接和程序调试,提高了我们的实践能力和动手能力。
简易计算器的设计报告

引言当今时代,是一个新技术层出不穷的时代。
在电子领域,尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统正以前所未见的速度被单片机智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。
过去习惯于传统电子领域的工程师、技术员正面临着全新的挑战,如不能在较短时间内学会单片机,势必会被时代所遗弃,只有勇敢地面对现实,挑战自我,加强学习,争取在较短的时间内将单片机技术融会贯通,才能跟上时代的步伐。
它所给人带来的方便也是不可否定的,它在一块芯片内集成了计算机的各种功能部件,构成一种单片式的微型计算机。
20世纪80年代以来,国际上单片机的发展迅速,其产品之多令人目不暇接,单片机应用不断深入,新技术层出不穷。
20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
本设计是由单片机实现的模拟计算器,它不仅能实现数据的加减乘除运算,而且还能使数据及其计算结果在数码管上显示出来,能够实现0-256的数字四则运算。
本设计是用单片机A T89C51来控制,采用LCD显示,软件部分是由C语言来编写的。
设计任务:利用键盘和LCD设计一个简单的数学计算器,可以完成简单的如加,减,乘,除的四则运算,并将运算结果在LCD上显示出来。
1.方案论证1.1 方案一根据功能和指标要求,本系统选用MCS-51系列单片机AT89C51为主控机。
通过扩展必要的外围接口电路,实现对计算器的设计。
计算器电路包括三个部分:显示电路、4*4键扫描电路、单片机微控制电路。
用七段数码管作为显示电路,矩阵键盘作为输入电路。
模块图如图1.1所示。
图1.1 方案一模块图1.2 方案二根据计算器的功能要求,选择AT89C51为主控机,通过扩展必要的外围接口电路,实现对计算器的设计。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
宁波大红鹰学院信息工程学院课程设计报告项目名称:小型计算器项目组长:邵芬芬项目成员:蔡萍萍、黄轮、雷骁班级名称:09计科1、09计科2专业名称:计算机科学与技术完成时间:2010.12信息工程学院制目录1 课程设计过程概述 (1)2课程设计题目描述和基本设计要求 (1)2.1课程设计题目描述2.2基本设计要求3系统需求分析与设计 (1)3.1系统需求分析3.2其他需求分析3.3 系统设计4 各功能模块设计 (2)4.1 计算器的菜单条模块设计4.2 计算器的基本界面设计4.3 计算器的加法模块设计4.4 计算器的减法模块设计4.5 计算器的乘法模块设计4.6 计算器的除法模块设计4.7 计算器的求余模块设计4.8 计算器的求平方根模块设计5 系统实现与测试 (10)6课程设计总结 (11)6.1遇到的问题及解决办法6.2心得体会附录 (12)小型计算器1 课程设计过程概述在2010年12月,我们小组进行了JA V A小型计算器的开发课程设计,要求我们在课后进行。
这次课程设计的主要目的是结合java程序设计课程,培养我们软件开发的思维,提高用Java编程的实际动手能力并更进一步地增强大家对java的了解。
这次课程设计的主要内容是独立用Java语言开发一个小的应用程序,小型计算器的设计,从而深刻体会java软件开发的应用。
2课程设计题目描述和基本设计要求2.1课程设计题目描述我们设计的是小型计算器。
主要用到的是图形用户界面设计,可以实现简单菜单功能并在文本编辑框里进行数据的加减乘除等简单计算,以及提供对计算结果的临时储存和参与运算的功能。
2.2基本设计要求(1)系统安全、灵活、可靠;(2)功能齐全;(3)操作方便、简单,界面友好;3系统需求分析与设计3.1系统需求分析小型计算器是一款可以实现简单数据数学运算的软件,既简单、容易操作又很方便用户使用,所以要求一般的功能都能满足。
本系统能实现菜单命令、按钮设置以及计算器的一般功能。
3.2其他需求分析(1)性能描述易于操作,通过界面上的按钮便可实现计算(2)设计约束开发工具:JCreator Pro开发工具。
(3)界面要求以JFrame窗口形式显示,包含编辑、查看、帮助等菜单,以网格布局将按钮顺序排放,使用户很快的找到所需按钮,并操作。
3.3 系统设计要求小型计算器用基于SWING的图形界面实现,并能实现用户的加减乘除余等功能。
4 各功能模块设计4.1 计算器的菜单条模块设计实现菜单功能(如图1),可以方便用户根据需要在菜单条中选择菜单命令功能:主要的功能代码:import java.awt.*;import javax.swing.*;import java.awt.event.*;class JSQFrame extends JFrame implements ActionListener{JMenuItem miExit,miCopy,miPaste;public JSQFrame(){setSize(360,345);setTitle("我的计算器");JMenuBar mb=new JMenuBar(); //菜单条的创建setJMenuBar(mb);//菜单创建JMenu mEdit=new JMenu("编辑(E)");JMenu mLook=new JMenu("查看(V)");JMenu mHelp=new JMenu("帮助(H)");//创建菜单项miCopy=new JMenuItem("复制(C)");miPaste=new JMenuItem("粘贴(P)");miCopy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,KeyEvent.CTRL_MASK)); miPaste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,KeyEvent.CTRL_MASK));miExit=new JMenuItem("退出(X)");JMenuItem miBz=new JMenuItem("标准型(T)");JMenuItem miKx=new JMenuItem("科学型(S)");JMenuItem miSz=new JMenuItem("数字分组(I)");JMenuItem miHelpzt=new JMenuItem("帮助主题(H)");JMenuItem miAboutjsq=new JMenuItem("关于计算器(A)");//菜单快捷键mEdit.setMnemonic('E');mLook.setMnemonic('V');mHelp.setMnemonic('H');//菜单项字母快捷键miCopy.setMnemonic('C');miPaste.setMnemonic('P');miExit.setMnemonic('X');miBz.setMnemonic('T');miKx.setMnemonic('S');miSz.setMnemonic('I');miHelpzt.setMnemonic('H');miAboutjsq.setMnemonic('A');miCopy.addActionListener(this);//Copy事件miPaste.addActionListener(this);//Paste事件miExit.addActionListener(this);//退出事件//将菜单添加到菜单条上mb.add(mEdit);mb.add(mLook);mb.add(mHelp);//将菜单项添加到菜单上mEdit.add(miCopy);mEdit.add(miPaste);mEdit.addSeparator();//分割线的设置mEdit.add(miExit);mLook.add(miBz);mLook.add(miKx);mLook.addSeparator();//分割线的设置mLook.add(miSz);mHelp.add(miHelpzt);mHelp.addSeparator();//分割线的设置mHelp.add(miAboutjsq);validate();setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //窗口关闭设置}public void actionPerformed(ActionEvent e){//菜单项的单击事件处理if(e.getActionCommand()=="复制(C)"){JOptionPane.showMessageDialog(null,"你点击了我,我是Copy项");}else if(e.getActionCommand()=="粘贴(P)"){JOptionPane.showMessageDialog(null,"你点击了我,我是Paste项");}else if(e.getActionCommand()=="退出(X)"){System.exit(0);}}}class Test{public static void main (String[] args) {JSQFrame jsq=new JSQFrame();jsq.setVisible(true);}}图1 菜单条4.2 计算器的基本界面模块设计在这一界面我们要可以进行一系列的数学计算。
实现这一功能的代码为:import java.awt.*;import javax.swing.*;import java.awt.event.*;class JSQFrame extends JFrame implements ActionListener{private JMenuItem miExit,miCopy,miPaste;private Box bBox;private GridLayout g;private JTextField txtWb; //计算结果显示区private JButton bB,bCE,bC;private JButton bMC,b7,b8,b9,bGang,bSqrt,bMR,b4,b5,b6,bXing,bBai,bMS,b1,b2,b3,bJian,bYI,bMJia,b0,bJiajian,bDian,b Jia,bDeng;public JSQFrame(){setSize(360,345);setTitle("我的计算器");JMenuBar mb=new JMenuBar(); //菜单条的创建setJMenuBar(mb);//菜单创建JMenu mEdit=new JMenu("编辑(E)");JMenu mLook=new JMenu("查看(V)");JMenu mHelp=new JMenu("帮助(H)");//创建菜单项miCopy=new JMenuItem("复制(C)");miPaste=new JMenuItem("粘贴(P)");miCopy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,KeyEvent.CTRL_MASK));miPaste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,KeyEvent.CTRL_MASK));miExit=new JMenuItem("退出(X)");JMenuItem miBz=new JMenuItem("标准型(T)");JMenuItem miKx=new JMenuItem("科学型(S)");JMenuItem miSz=new JMenuItem("数字分组(I)");JMenuItem miHelpzt=new JMenuItem("帮助主题(H)");JMenuItem miAboutjsq=new JMenuItem("关于计算器(A)");//菜单快捷键mEdit.setMnemonic('E');mLook.setMnemonic('V');mHelp.setMnemonic('H');//菜单项字母快捷键miCopy.setMnemonic('C');miPaste.setMnemonic('P');miExit.setMnemonic('X');miBz.setMnemonic('T');miKx.setMnemonic('S');miSz.setMnemonic('I');miHelpzt.setMnemonic('H');miAboutjsq.setMnemonic('A');miCopy.addActionListener(this);//Copy事件miPaste.addActionListener(this);//Paste事件miExit.addActionListener(this);//退出事件//将菜单添加到菜单条上mb.add(mEdit);mb.add(mLook);mb.add(mHelp);//将菜单项添加到菜单上mEdit.add(miCopy);mEdit.add(miPaste);mEdit.addSeparator();//分割线的设置mEdit.add(miExit);mLook.add(miBz);mLook.add(miKx);mLook.addSeparator();//分割线的设置mLook.add(miSz);mHelp.add(miHelpzt);mHelp.addSeparator();//分割线的设置mHelp.add(miAboutjsq);//创建三个面板p1、p2、p3JPanel p1=new JPanel();JPanel p2=new JPanel();JPanel p3=new JPanel();txtWb=new JTextField(30); //创建文本框txtWb.setHorizontalAlignment(JTextField.RIGHT); //文本框内光标置右p1.add(txtWb); //将文本框添加到p1面板中bB=new JButton("Backspace");bCE=new JButton("CE");bC=new JButton("C");p2.add(bB); //将退格、取消、删除按钮添加到p2面板p2.add(bCE);p2.add(bC);bB.setPreferredSize(new Dimension(110,30)); //设置三个按钮组件的大小bCE.setPreferredSize(new Dimension(110,30));bC.setPreferredSize(new Dimension(110,30));g=new GridLayout(4,6); //新建一个4行6列的网格布局p3.setLayout(g); //将网格添加到p3面板g.setHgap(2); //g设置组件垂直、水平间隙为2个像素单位g.setVgap(2);bMC=new JButton("MC"); //创建网格中的按钮b7=new JButton("7");b8=new JButton("8");b9=new JButton("9");bGang=new JButton("/");bSqrt=new JButton("sqrt");bMR=new JButton("MR");b4=new JButton("4");b5=new JButton("5");b6=new JButton("6");bXing=new JButton("*");bBai=new JButton("%");bMS=new JButton("MS");b1=new JButton("1");b2=new JButton("2");b3=new JButton("3");bJian=new JButton("-");bYI=new JButton("1/x");bMJia=new JButton("M+");b0=new JButton("0");bJiajian=new JButton("+/-");bDian=new JButton(".");bJia=new JButton("+");bDeng=new JButton("=");bDeng.setPreferredSize(new Dimension(50,50));//网格中按钮的大小//将网格布局中的按钮添加到p3面板中p3.add(bMC);p3.add(b7);p3.add(b8);p3.add(b9);p3.add(bGang);p3.add(bSqrt);p3.add(bMR);p3.add(b4);p3.add(b5);p3.add(b6);p3.add(bXing);p3.add(bBai);p3.add(bMS);p3.add(b1);p3.add(b2);p3.add(b3);p3.add(bJian);p3.add(bYI);p3.add(bMJia);p3.add(b0);p3.add(bJiajian);p3.add(bDian);p3.add(bJia);p3.add(bDeng);//创建列型盒式布局bBoxbBox=Box.createVerticalBox();bBox.add(p1); //将三个面板添加到bBox中bBox.add(p2);bBox.add(p3);FlowLayout f=new FlowLayout();setLayout(f); //设置布局add(bBox); //将盒式布局嵌套到f中,顺序添加盒式中的三个面板validate();setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //窗口关闭设置}public void actionPerformed(ActionEvent e){//菜单项的单击事件处理if(e.getActionCommand()=="复制(C)"){JOptionPane.showMessageDialog(null,"你点击了我,我是Copy项");}else if(e.getActionCommand()=="粘贴(P)"){JOptionPane.showMessageDialog(null,"你点击了我,我是Paste项");}else if(e.getActionCommand()=="退出(X)"){System.exit(0);}}}计算器基本界面如图2所示:图2 计算器基本界面功能图4.3 计算器加法模块设计在计算器界面中,用户可以进行加法计算的功能。