- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
广 州 大 学
实 验 报 告
学 院 工商管理学院
专业、班级 电子商务
姓名、学号
课程名称 Java语言程序设计
项目名称 GUI 程序设计
实验时间:2013年 06月 09日
GUI 程序设计 实验报告
开课实验室:文俊东606
2013年06月09日
学院
工商管理学院
年级、专业、班
姓名
成绩
课程
名称
Java语言程序设计
实验项目
名 称
GUI 程序设计
指导教师
签名
一、实验目的
掌握GUI 程序设计的基本技术;
掌握基本Widget的使用;
掌握通GUI设计用户接口的方法;
二、实验原理(算法分析(包括流程图))
1. CalcFace类按照Lcd类进行改造(将两个类中的相关功能合并);
2. 由于GUI程序已是消息驱动的,程序运行后就处于一个循环中,因此原仿真程序中Calcface中的input()方法以及Calculator中的on()方法就可弃之不用了。
3.改造Toyface,为计算器界面布局,并将Toyface与Runcale合并使之能与calculator相连。
4. System.out.println需改成向Jlabel对象输出的语句
三、实验过程原始记录(数据、图表、计算等)
1.运行程序
2.进行运算
3.计算器其他按钮的功能实现
1)C的功能实现 按C后计算机只录入9*;
2)N的功能实现 按N后结果变成-15
3)A的功能实现 按A后清空归零
四、实验感悟
本次实验相对比较简单,只需要安排好显示界面和将两个合并之后再对一些细节部分进行修改就可以了。完成实验后我对显示界面的布局更加了解了。
五、附录(自己实现的源代码)
/////// CalcFace.java ///////
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.CompoundBorder;
class CalcFace extends JPanel implements ActionListener
{
public CalcFace(String k, byte pr){
keys = k;
prec = pr++;
nbuf = new StringBuffer(prec);
reset1();
errorMode=false;
errorStr=;
d = new JLabel(in, JLabel.RIGHT);
setBorder(BorderFactory.createCompoundBorder(BorderFactory
.createLoweredBevelBorder(), BorderFactory.createEmptyBorder(5,
10, 5, 10)));
setLayout(new BorderLayout()); //设置布管理器
reset2();
add(d);
addMouseListener(new ClickHandler(this)); //注册事件监听器
}
public void setCalc(Calculator ca){
calc = ca;
}
public void showNumber(String s) {
d.setText(hl+prompt + s+ht);
}
public void showOp(char op) {
}
//如果输入的str为空,则清除errorMode
//相当于主控模决发送一个消息给计算器,使其可知道当前计算器对象当前的状态
public void errorInput(String str){
if(str.
文档评论(0)