课程序设计实例Word文件下载.docx
《课程序设计实例Word文件下载.docx》由会员分享,可在线阅读,更多相关《课程序设计实例Word文件下载.docx(15页珍藏版)》请在冰豆网上搜索。
。
课程设计环境
Access2003、Delphi7、windowsXP
课程设计任务和要求
人口普查系统以计算机为工具,通过对人口普查所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事人口管理政策的研究实施,从而全面提高工作质量。
课程设计工作进度计划
序号
起止日期
工作内容
1
2008-2-26
需求分析、功能设计
2
2008-2-27
设计E-R图、建立数据库
3
2008-2-28
应用窗口
4
2008-3-8
人口录入及查询等其他窗口
5
2008-3-10
写实验报告
6
2008-3-14
提交作业
教研室审核意见:
教研室主任签字:
年月日
教学院(系)审核意见:
主任签字:
年月日
目录
第一章需求分析-----------------------------------------------------------1
第二章开发过程-----------------------------------------------------------2
2.1系统目标----------------------------------------------------------------------3
2.2合理的设计数据库----------------------------------------------------------4
2.3设计出友好的界面----------------------------------------------------------4
2.4实现基本功能和和一些特殊的功能-------------------------------------4
2.5功能划分----------------------------------------------------------------------5
2.6系统功能分析----------------------------------------------------------------5
第三章详细设计----------------------------------------6
3.1系统设计方法-------------------------------------------7
3.2数据库设计---------------------------------------------7
3.3系统结构设计-------------------------------------------7
3.4系统界面设计-------------------------------------------7
第四章调试与操作说明----------------------------------7
第五章课程设计与体会-----------------------------------8
致谢
参考文献
第一章需求分析
用户需求分析
该实习完成的是一个简单的人口普查系统,功能比较简单,要在实际中应用还需进一步的改进和功能的进一步的扩充,它实现的功能如下
1、完成人口情况数据的录入。
2、实现人口信息的简单查询、高级查询及人数的统计。
使用的开发工具:
DELPHI7.Access.系统的设计
第二章开发过程
2.1系统目标
开发本系统的目的在于代替当前系统的手工计算、制表等工作。
我们一般设计系统都要完成以下的几个要求,以便于用户进行操作。
这样才能使系统易学易用。
2.2合理的设计数据库
尽量合理地减少数据库数据的冗余,使重复的数据保持在最小限度,这样将不必要的多占用存储空间,减少产生混乱影响的危险,还能提高计算机的运行速度。
2.3设计出友好的界面
界面的友好与否是用户评价一个软件优劣的重要方面之一,使用户有一个良好的心情。
另外窗口界面要多用按钮和快捷键,少用菜单,窗口的各个控件布局要合理,美观。
要充分的利用DELPHI提供的强大的功能,多用窗口和控件,充分体现窗口的多元化格局。
2.4实现基本功能和一些特殊功能的操作
该系统要求除了能实现信息的录入,删除,插入,更新等基本功能之外,还要求能够根据用户的需要进行操作。
2.5功能划分
本系统的功能主要划分为:
1.人口登记 2.查询模块和统计分析3.版本
功能描述如下:
1.人口登记:
实现人口信息登记
2.查询:
根据人口信息进行查询统计分析:
综合条件查询
3.版本:
设计者名单及相关信息
2.6系统功能分析
开发这个系统的目的就是要帮助政府的户籍部门提高工作效率,实现人口管理系统的系统化、规范化和自动化。
根据这个系统所要实现的目的和任务,总结出这个系统最终要实现的主要功能如下:
●数据设置部分:
主要包括人口情况录入功能。
●数据采集部分:
主要完成日常登记。
●数据查询部分:
主要包括人口信息查询、人口情况统计。
人口登记模块具体功能及数据流图
A、考勤信息管理数据概况列表如下:
输入:
身份证、姓名、年龄、职业、性别、职业等级、最高职业、工资收入、国籍、家庭人口数、婚否
处理:
登记人口信息记录。
数据存储:
人口登记记录。
输出:
进行下一条记录。
B、人口登记基本情况操作数据流图:
C、人口普查查询数据概况:
输入查询内容
查询所需数据
人口基本信息。
操作结果。
D、考勤基本情况增、删、改数据流图如下:
第三章系统设计
3.1系统设计的方法
系统设计是把需求转化为软件系统的最重要的环节。
系统设计的优劣在根本上决定了软件系统的质量。
系统设计的五个方面的内容:
体系结构设计、模块设计、数据库设计数据结构与算法设计、用户界面设计。
3.2数据库设计
3.2.1数据库设计概述
数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。
数据库设计的好与坏,直接影响到这个系统的运行效率。
良好的数据库设计,可以提高数据信息的存储效率,保证数据信息的完整性和一直性。
同时,一个合理的数据库结构有利于程序的实现。
这里选用Access2000作为后台数据库。
3.2.2数据实体字典
数据表定义
字段名
字段型
字段长度
约束性
身份证号码
char
无限制
主键
文本
年龄
缺省为空
职业
日期/时间
yyyy-mm-dd
性别
男/女
空
职称等级
最高学历
工资收入
国籍
家庭人口数
婚否
3.3系统的结构设计
图2系统E-R图
流程图
图2.1数据库结构设计E-R图
3.4系统的界面设计
系统通过建立窗口完成登录,如图2.2
表2.3任意报表表
(1)“确定”代码如下:
procedureTForm4.Button1Click(Sender:
TObject);
begin
ifEdit2.Text<
>
'
123'
then
ifEdit2.Text='
ShowMessage('
请输入密码!
)
else
begin
密码不正确,请重新输入!
);
Edit2.Text:
='
;
end
Form1.Show;
Form4.Hide;
end;
end;
end.
(2)退出close代码如下:
procedureTF_main.closeBitBtnClick(Sender:
disposecontrols;
close;
(2)previewbitbtn代码如下:
procedureTF_main.previewBitBtnClick(Sender:
var
i:
integer;
leftx:
widthperbyte:
Heading:
TQRlabel;
QRLabel:
TQRlabel;
QRshape1:
TQRshape;
QRshape2:
QRdbtext:
TQRDBtext;
=10;
//每个字节对应的像数
columnswidth;
//计算最大列宽与总宽度
//释放动态创建的控件
iftotalwidth*widthperbyte>
1123then
Application.MessageBox('
报表超宽,请调整再输出!
'
警告'
1);
//输出对话框
exit;
elseiftotalwidth*widthperbyte>
794then
F_report.QuickRep1.Page.Orientation:
=polandscape//横向
=poPortrait;
//纵向
=TQRlabel.Create(self);
//创建TQRlabel控件
Heading.parent:
=F_report.TitleBand1;
//设置其容器控件
Heading.Caption:
动态报表生成示例'
//报表标题
Heading.Font.Size:
=16;
Heading.Font.Style:
=[fsbold];
Heading.Alignment:
=tacenter;
Heading.Width:
=Length('
)*(widthperbyte+4);
Heading.Left:
=(F_report.QuickRep1.Width-Heading.width)div2;
Heading.Height:
=F_report.TitleBand1.Height-1;
Heading.Top:
=0;
Leftx:
=(F_report.quickrep1.width-totalwidth*widthperbyte)div2;
F_report.QuickRep1.Font.Size:
=12;
fori:
=0toListbox2.items.count-1do//根据所选择字段的数目来动态创建
QRShape1:
=TQRSHape.Create(self);
QRShape1.parent:
=F_report.ColumnHeaderBand1;
QRShape1.Left:
=Leftx;
QRShape1.Width:
=maxwidth*widthperbyte+4;
QRShape1.Height:
=F_report.ColumnHeaderBand1.Height;
QRShape1.top:
=TQRLabel.Create(self);
QRLabel.parent:
QRLabel.Font.Style:
QRLabel.Left:
=Leftx+2;
QRLabel.width:
=maxwidth*widthperbyte;
QRLabel.height:
=F_report.ColumnHeaderBand1.Height-2;
QRLabel.top:
=1;
QRLabel.caption:
=Listbox2.Items.Strings[i];
QRShape2:
=TQRSHAPE.Create(self);
QRShape2.Parent:
=F_report.DetailBand1;
QRShape2.Left:
QRShape2.Width:
QRShape2.Height:
=F_report.DetailBand1.Height;
QRShape2.top:
QRDBText:
=TQRDBText.Create(self);
QRDBText.parent:
QRDBText.Left:
QRDBText.Width:
QRDBText.Height:
=F_report.DetailBand1.Height-2;
QRDBText.Top:
QRDBText.DataSet:
=F_report.Table1;
QRDBText.DataField:
=Leftx+maxwidth*widthperbyte+4;
F_report.Table1.Active:
=true;
F_report.QuickRep1.Preview;
End;
(4)退出close代码如下:
第四章调试与操作说明
在系统的制作过程中,我们遇到了很多错误.出现错误时,按提示进行初步定位错误在什么地方进而仔细检查是代码错误还是其他系统性的错误从而根据错误进行修改,操作时一定要注意规范程度免的带来不必要的麻烦,给系统的正常运行又设置了障碍。
调试时出现没定义之类的错误,经发现是代码出错.
第五章课程设计总结与体会
由于我的经验不足及阅历颇浅,因此,在该系统的设计方面还有很多不足,比如功能过少,代码不够优化等问题,我会在以后的学习、工作的过程中,根据工作的具体要求不断的修改,完善,争取使该系统慢慢趋向完美。
一般来说,应用程序有两部分组成,一部分是界面,另一部分是数据处理,特别是数据库操作。
一个典型的数据库应用程序有数据库、菜单、用户界面和报表等组成。
在设计应用程序时,应仔细考虑每个组件将提供的功能以及该组件与其他组件之间的关系。
谢辞:
在本系统是我第一次尝试这么大的软件编程。
在刚开发系统完毕准备开始写论文时我对论文的写法是一片空白,因为在此之前我还没有接触过这一类的文章的写作,并且涉及到我是否能够毕业的问题所以我迟迟无法下手写作。
在查了许多资料后,我才开始我的第一篇论文的写作之旅。
参考文献:
[1]《实例解析Delphi7.0应用编程》,李林,张亮,北京希望电子出版社,2000。
[2]《Delphi5企业级解决方案及应用剖析》,刘艺,机械工艺出版社,2000。
[3]《数据库系统概论》,萨师煊、王珊,高等教育出版社,1997。
[4]《软件工程》.杨文龙,姚淑珍,吴云.电子工业出版社,1997。
[5]《Delphi 6程序设计技术教程》,徐汀荣,王民,陈越,陈建明,北京希望电子出版社,2002-9。
指导教师评语:
指导教师签名:
成绩评定
项目
权重
成绩
1、设计过程中出勤、学习态度等方面
0.1
2、设计技术水平
0.4
3、编程风格
0.2
4、设计报告书写及图纸规范程度
0.3
总成绩
主任签字:
年月日