面向对象程序设计A(Java)
实验报告
实验名称: GUI实验 实验类型: 设计型 指导教师: 刘涌 专业班级: 信安1205
姓 名: 刘追 学 号: 5120155364 实验地点: 东六E501 实验成绩:
日期:2016年11月12日
实验四 GUI实验
一、实验目的
练习Java图形用户界面设计、界面布局、事件设计方法,熟悉GUI 程序设计的基本技术、基本Widget的使用、GUI设计用户接口的方法
二、实验内容
设计一个类似Windows计算器的Application应用程序
三、实验设计
1、采用Java Application方式建立应用程序Calculator的框架
2、仿照Windows计算器,实现界面设计。将contentPane分成两个jPanel(borderlayout),其中一个放置文本框,另一个继续划分为两部分,分别以FlowLayout和GridLayout的形式放置按钮。设置按钮、文本框等的Text值及相应属性的修改。
3、设计方法:设两个变量value1、value2分别存储运算符左右两个操作数,设置标识符flag,初值为0,此时输入的数传给value1,当按下+-*\\时设置flag为1,此时输入的数字传给value2;按下”=”时,根据value1,value2及op值进行计算并输出至文本框
4、设计方法调节程序bug
5、点击事先设计的计算器数字按钮,显示框出现相应数字;点击“+-*/”时,显示框出现相应字符;输入计算式后再输入“=”,显示框出现计算结果,基本实现Windows计算器功能
四、实验过程
1、采用Java Application方式建立应用程序框架
2、仿照Windows计算器,利用多种布局方式实现界面设计 3、组装操作数和运算符,完成简单的整数加、减、乘、除运算
4、通过getTxt()方法来获得显示框txt内容,setTxt()方法把字符显示在Txt框内;通过Integer.parseInt(String)实现字符串到整型的转换,String.valueOf(Int)实现整型到字符串的转换。
5、遇到的问题:显示txt框无法显示两位及以上的数字。解决方法:txt.setTxt(String.valueOf(num*10+btnNum));把原来的数字*10,再加上要显示的字符并且将整型数字转化为字符串。
五、实验结果
运行程序可得到一与Windows计算器界面类似(形式由自己设定的计算器,可实现加、减、乘、除简单数学运算。
六、讨论与分析
1.通过这次实验懂得了GUI的基本设计过程和其实现
2.对java的图形用户界面设计、事件设计方法有了进一步的了解 3.学会了制作简单的计算器
七、附录:关键代码(给出适当注释,可读性高)
public class Calculator extends javax.swing.JFrame { public Calculator() { initComponents(); }
private void initComponents() { //设置主面板按钮
menuBar = new javax.swing.JMenuBar();