计算机毕业论文_桌面应用程序

江苏信息职业技术学

毕业论文

题目:桌面应用程序

系 别: 计算机工程系

专 业: 软件(NIIT)/英语

学 号: 0603203120

姓 名:指导教师:

2013年12 月 20 日

第1章 课题分析

1.1. 功能描述

设计GUI 界面的日历记事本。系统将日历、记事本功能结合在一起,用户可以方便的在任何日期记录下记录有关内容或查看某个日期的记录内容。

1:系统同界面的上侧是日历。该日历可以按年份前后翻动,鼠标单击“上年”按钮时,当前日历的年份减一;当鼠标左键单击“下年”按钮,当前日历年份加一。

2:该日历也可以在某年内按月前后翻动。当鼠标左键单击“上月”按钮时,当前日历的月份减一;当鼠标左键单击“下月”按钮时,当前日历的月份加。

3:系统同界面的下侧是所记事的内容试用鼠标左键单击选定的日期,如已有记录内容,系统下侧会显示所记事的内容。

4; 用户选择具体日期后,可以讲记事本的当前内容保存起来,形成日志。

1.2 需求分析

java 是一种简单的,跨平台的,面向对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。当1995年SUN 推出Java 语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java 到底有何神奇之处呢?

Java 语言其实最早是诞生于1991年,起初被称为OAK 语言,是SUN 公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK 可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK 的命运。

在Java 出现以前,Internet 上的信息内容都是一些乏味死板的HTML 文档。这对于那些迷恋于WEB 浏览的人们来说简直不可容忍。他们迫切希望能在WEB 中看到一些交互式的内容,开发人员也极希望能够在WEB 上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力,面SUN 的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK 技术应用于WEB 上,并且开发出了HotJava 的第一个版本。当SUN 公司1995年正式以Java 这个名字推出的时候,几乎所有的WEB 开发人员都想到:噢,这正是我想要的。于是Java 成了一颗耀眼的明星,

丑小鸭一下了变成了白天鹅。

Java 的开发环境有不同的版本,如sun 公司的Java Development Kit , 简称JDK 。后来微软公司推出了支持Java 规范的Microsoft Visual J++ Java开发环境,简称 VJ++。

1.3类之间的关系

类之间的主要关系如图(1)所示。

该JAVA 文件生成的类负责创建本日记记事本程序主窗口。该类含有main 方法,程序从该类开始执行。

Note.Java

该文件负责创建记事本。

Y ear.java

该文件负责创建管理年份的对象。

Month.Java

该文件负责创建管理月份的对象

图(1)

1.4课件内容分析

Java 算法

例:从文本框中输入1到100之间的数字,单击按钮,比较输入的数与20的大小关系,并且提示关系

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import javax.swing.event.*;

public class PanDuan implements ActionListener{

JTextField jtf1;

JButton b1;

JFrame f=null;

String title="结果";

String message="";

int type=JOptionPane.PLAIN_MESSAGE;

public PanDuan(){

f=new JFrame();

Container c=f.getContentPane();

c.setLayout(new BorderLayout());

JPanel p1=new JPanel();

p1.setLayout(new GridBagLayout());

GridBagConstraints gb=new GridBagConstraints();

gb.gridx=0;

gb.gridy=0;

p1.add(new JLabel("请输入数字:",JLabel.CENTER),gb);

gb.gridx=1;

gb.gridy=0;

jtf1=new JTextField(8);

//jtf1.setEnabled(false);

p1.add(jtf1,gb);

gb.gridx=0;

gb.gridy=1;

b1=new JButton("确定");

b1.addActionListener(this);

p1.add(b1,gb);

c.add(p1);

f.setSize(300, 300);

f.setTitle("添加员工资料");

f.setVisible(true);

f.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

}

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

if(e.getSource()==b1){

String zhi=jtf1.getText();

if(zhi.equals("")){//判断输入的内容是否为空

type=JOptionPane.WARNING_MESSAGE;

message="内容不能为空!!!";

JOptionPane.showMessageDialog(f, message,title,type);

return;

}

for(int i=0;i

if(!Character.isDigit(zhi.charAt(i))){

type=JOptionPane.WARNING_MESSAGE;

message="请输出数字!!!";

JOptionPane.showMessageDialog(f, message,title,type);

return;

}

}

int sz=Integer.parseInt(zhi);//将去取出的字符串转换为整型的

if(sz>20){

type=JOptionPane.INFORMATION_MESSAGE;

message="你输入的数字大于20!!!";

}

if(sz==20){

type=JOptionPane.INFORMATION_MESSAGE;

message="你输入的数字等于20!!!";

}

if(sz

type=JOptionPane.INFORMATION_MESSAGE;

message="你输入的数字小于20!!!";

}

JOptionPane.showMessageDialog(f, message,title,type);

}

}

public static void main(String[]args){

new PanDuan();

}

}

1.4.1Swing 语言

Swing 就是让程序可以有操作界面,不用在控制台输入一些数字字符串什么的了~!这个包主要是做一些窗口,然后窗口上添加按钮,下拉列表框,列表框 等等组建

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import java.util.*;

import java.text.*;

import java.io.*;

public class Note extends Frame {

private MenuBar mb;

private Menu mset_param ,mhelp;

private MenuItem mibc ,miSound;

private MenuItem miabout;

//缺省的背景颜色

private static Color backgroundcolor = Color.GRAY;

//funtction of the button on plcb is chose year andmonth

//and set alarm colock and remind booking

private JCheckBox remindBook ,alarmColock;

private JComboBox cbyears ,cbmonths;

private JPanel plcb;

//日历按钮

private JPanel plbt;

private JButton button[];

//add vector to contain button[],so that find it

private Vector v;

//save the year and month

private String choseyear ,chosemonth;

private int choseyearint ,chosemonthint;

private boolean changed = false;

private boolean fileExist = false;//the application first run to find file

private static boolean needSound;

//add text to write down what to do in the future

private TextArea tanote;

private JPanel plta;

//默认的年份

private final static String years[]={

"1995" ,"1996" ,"1997" ,"1998" ,"1999" ,"2000" ,

"2001" ,"2002" ,"2003" ,"2004" ,"2005" ,"2006" ,

"2007" ,"2008" ,"2009" ,"2010" ,"2011" ,"2012" ,

"2013" ,"2014" ,"2015" ,"2016" ,"2017" ,"2018" ,

"2019" ,"2020"

};

private static final String months[] = {

"January" ,"February" ,"March" ,"April" ,"May" ,"June" ,"July" ,"August" ,

"September" ,"October" ,"November" ,"December"

};

private final static int dom[] = {

31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 ,31 ,30 ,31

};

就是为日历记事本设置一个对话框,

设计思路

设计GUI 界面的日历记事本。系统将日历、记事本功能结合在一起,用户可以方便的在任何日期记录下记录有关内容或查看某个日期的记录内容。

1:系统同界面的上侧是日历。该日历可以按年份前后翻动,鼠标单击“上年”按钮时,当前日历的年份减一;当鼠标左键单击“下年”按钮,当前日历年份加一。

2:该日历也可以在某年内按月前后翻动。当鼠标左键单击“上月”按钮时,当前日历的月份减一;当鼠标左键单击“下月”按钮时,当前日历的月份加。

3:系统同界面的下侧是所记事的内容试用鼠标左键单击选定的日期,如已有记录内容,系统下侧会显示所记事的内容。

4; 用户选择具体日期后,可以讲记事本的当前内容保存起来,形成日志。

第2章 运行效果与程序发布

2.1程序的运行效果图

图2-2

第3章 软件测试

3.1软件测试的目的:

使用人工或者自动手段来运行或测试某个系统的过程, 其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别.

它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。且有以下观点

(1)测试并不仅仅是为了找出错误. 通过分析错误产生的原因和错误的发生趋势, 可以帮助项目管理者发现当前软件开发过程中的缺陷, 以便及时改进;

(2)这种分析也能帮助测试人员设计出有针对性的测试方法, 改善测试的效率和有效性;

(3)没有发现错误的测试也是有价值的, 完整的测试是评定软件质量的一种方法

3.2:具体测试内容:

软件测试主要工作是验证(verification)和确认(validation ),下面分别给出其概念:

验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing)

1. 确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;

2. 程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;

3. 评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。

确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Do it right)

1. 静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性;

2. 动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。

软件测试的对象不仅仅是程序测试,软件测试应该包括整个软件开发期问各个阶段所产生的文档,如需求规格说明、概要设计文档、详细设计文档,当然软件测试的主要对象还是源程序。

3.2.1:选择好所需要的时间。


© 2024 实用范文网 | 联系我们: webmaster# 6400.net.cn