vb课程设计要点.docx
《vb课程设计要点.docx》由会员分享,可在线阅读,更多相关《vb课程设计要点.docx(17页珍藏版)》请在冰点文库上搜索。
vb课程设计要点
课程设计任务书
学院
信息工程学院
班级
11级通信一班
姓名
陈宇
设计起止日期
2012年12月24至26日
设计题目:
学生成绩信息管理系统
设计任务(主要技术参数):
目的是进一步培养协商综合应用VisualBasic的各种编程知识和技巧设计的能力。
通过课程设计,学生能达到具备设计功能较为复杂的Windows应用能力。
同时,通过课程设计,培养学生自主学习和独立创新的精神,是人才培养体系中极为重要的一环。
随着学校的规模不断扩大,学生人数急剧增加,有关学生的各种成绩也成倍增长。
面对庞大的信息量需要有学生管理系统来提供学生管理工作的效率。
通过这样的系统可以做到信息的规划管理,科学统计和快速查询,修改,录入,删除等,从而减少管理方面的工作量。
实现学生信息关系的系统化,规范化,自动化,用计算机对学生各种信息进行日常管理。
指导教师评语:
成绩:
签字:
年月日
学生成绩信息管理系统
1课程设计题目
学生成绩信息管理系统
2功能描述
本程序主要有部分构成;按姓名查询系统,按学号查询系统,逐条查询系统,录入系统,删除系统,修改系统,主窗体等。
目的是方便快捷的查询到所需内容,并且修改方便,一目了然。
3概要设计
根据功能描述,现将系统的体系结构,即组成系统的若干子功能模块说明如下。
学生成绩信息管理系统
按学号查询
按姓名查询
修改
删除
录入
逐条查询
1按学号查询:
此模块的功能是输入学号查询学生成绩信息。
2按姓名查询:
此模块的功能是输入姓名查询学生成绩信息。
3逐条查询:
此模块的功能是输入各项信息查询学生成绩信息。
4录入:
此模块的功能是录入学生成绩各项信息。
5删除:
此模块的功能是删除学生成绩错误信息。
6修改:
此模块的功能是修改学生成绩信息。
4详细设计
(1)创建主窗体
建立主窗体:
单击”工程”->”添加MDI窗体”菜单,在弹出的对话框中单击”打开”按钮则为当前项目添加了一个MDI窗体。
设置好MDI窗体属性后,设置此项目的属性。
单击”工程”->”工程1属性”菜单,进入项目属性设置窗体。
在此项目属性窗体中通用选项卡的启动对象中选择MDIfrmMain项,将这一多文档窗体作为程序的启动窗体。
(2)主要窗体的实现
主页面模块的设计:
此模块是系统服务器端的主要控制界面,通过菜单的选择,可以控制系统的所有功能。
主界面的设计步骤:
1)设计主界面控件布局:
在主界面的布局中使用了工具栏(ToolBar)、和图象列表(ImageList)等非Vb标准控件。
2)工具栏的设置:
给工具栏添加按钮。
3)添加菜单:
菜单的使用是为了更好的给用学生供功能指引,同时也简单了主菜单的操作。
(3)创建系统主界面
当系统运行时,便直接进入主窗体,窗体的上方标有各个功能键,每个功能键又包含若干功能,启动系统主界面,没有用到任何插件。
(4)如果信息录入错误,需对学生信息进行修改:
在该系统中,此模块是必不可少的首要环节。
通过检查对入住录入的信息的修改,可方便老师和学生查询信息。
显示有关控件;
通过语句:
OpenApp.Path&"\酒店信息管理.txt"ForInputAs#1。
实现对相关数据所在文本文件以读方式打开;
通过语句:
OpenApp.Path&"\学生成绩信息管理系统
temp.txt"ForOutputAs#2在当前文件夹中创建"联系人号码temp.txt"文件。
增删数据完成后,通过语句:
KillApp.Path&"\酒店信息管理.txt"NameApp..Path&"\学生成绩信息管理系统
temp.txt"AsApp.Path&"\学生成绩信息管理系统
.txt"'删除原来的联系人号码.txt文件,保留后者。
既增删数据成功。
5运行效果
1.查询系统的主界面
2.根据学号查询
3.根据姓名查询
4.逐条查询
5.录入
6.删除
7.修改
存在的不足:
只能单一的查询成绩信息,没有其他复杂的登录界面,程序简单可查询的信息量小。
6心德与体会
通过此次课程设计我懂得了很多,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。
在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。
学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。
课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.
7附录:
各功能模块的全部代码。
1主窗体代码
PrivateSubchaxun1_Click()
LoadFrm_查询1
Frm_查询1.Show
EndSub
PrivateSubchaxun2_Click()
LoadFrm_查询2
Frm_查询2.Show
EndSub
PrivateSubchaxun3_Click()
LoadFrm_查询3
Frm_查询3.Show
EndSub
PrivateSubImage1_Click()
EndSub
PrivateSubForm_Load()
EndSub
PrivateSubjishiben_Click()
Shell"C:
\WINDOWS\notepad.exe",vbNormalFocus
EndSub
PrivateSubjisuanqi_Click()
Shell"C:
\WINDOWS\system32\calc.exe",vbNormalFocus
EndSub
PrivateSubluru_Click()
LoadFrm_录入
Frm_录入.Show
EndSub
PrivateSubshanchu_Click()
LoadFrm_删除
Frm_删除.Show
EndSub
PrivateSubtuichu_Click()
End
EndSub
PrivateSubxiugai_Click()
LoadFrm_修改
Frm_修改.Show
EndSub
2学号查询代码
PrivateSubCommand1_Click()
OnErrorResumeNext
dh=Trim(Text1.Text)
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
DoWhileNotEOF
(1)
LineInput#1,x
a=Trim(Left(x,10))
b=Trim(Mid(x,11,20))
c=Trim(Mid(x,31,20))
Ifdh=bThen
MsgBoxa&Chr(13)&b&Chr(13)&c
EndIf
Loop
Close#1
EndSub
PrivateSubForm_Unload(CancelAsInteger)
OnErrorResumeNext
Close#1
EndSub
PrivateSubPicture1_Click()
EndSub
3姓名查询代码
PrivateSubCommand2_Click()
OnErrorResumeNext
xm=Trim(Text2.Text)
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
DoWhileNotEOF
(1)
LineInput#1,x
a=Trim(Left(x,10))
b=Trim(Mid(x,11,20))
c=Trim(Mid(x,31,20))
Ifxm=aThen
MsgBoxa&Chr(13)&b&Chr(13)&c
EndIf
Loop
Close#1
EndSub
PrivateSubForm_Unload(CancelAsInteger)
OnErrorResumeNext
Close#1
EndSub
4逐条查询代码
PrivateSubCommand1_Click()
OnErrorResumeNext
dh=Trim(Text1.Text)
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
DoWhileNotEOF
(1)
Input#1,x
a=Trim(Left(x,20))
b=Trim(Mid(x,21,20))
c=Trim(Mid(x,41,20))
Ifdh=bOrdh=cThen
MsgBoxa&Chr(13)&b&Chr(13)&c
EndIf
Loop
Close#1
EndSub
PrivateSubCommand2_Click()
OnErrorResumeNext
xm=Trim(Text2.Text)
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
DoWhileNotEOF
(1)
Input#1,x
a=Trim(Left(x,20))
b=Trim(Mid(x,21,20))
c=Trim(Mid(x,41,20))
Ifxm=aThen
MsgBoxa&Chr(13)&b&Chr(13)&c
EndIf
Loop
Close#1
EndSub
PrivateSubCommand3_Click()
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
Command3.Enabled=False
Command4.Enabled=True
Command5.Enabled=True
EndSub
PrivateSubCommand4_Click()
IfNotEOF
(1)Then
LineInput#1,x
Text3.Text=Trim(Left(x,10))
Text4.Text=Trim(Mid(x,11,20))
Text5.Text=Trim(Mid(x,31,20))
Else
MsgBox"已经是最后一条了"
EndIf
EndSub
PrivateSubCommand5_Click()
Close#1
Command3.Enabled=True
Command4.Enabled=False
Command5.Enabled=False
EndSub
PrivateSubForm_Load()
Command3.Enabled=True
Command4.Enabled=False
Command5.Enabled=False
EndSub
PrivateSubForm_Unload(CancelAsInteger)
Close#1
EndSub
5录入代码
PrivateSubCommand1_Click()
OpenApp.Path&"\学生成绩信息管理.txt"ForAppendAs#1
Print#1,Text1.Text;Tab(11);Text2.Text;Tab(31);Text3.Text
Close#1
Text1.Text=""
Text2.Text=""
Text3.Text=""
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
Text1.Text=""
Text2.Text=""
Text3.Text=""
EndSub
6修改代码
DimnAsInteger
DimnumAsInteger
PrivateSubCommand4_Click()
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
OpenApp.Path&"\学生成绩信息管理temp.txt"ForOutputAs#2
Fori=1Ton-1
LineInput#1,a
Print#2,a
Nexti
LineInput#1,a
Print#2,Text1.Text;Tab(11);Text2.Text;Tab(31);Text3.Text
Fori=n+1Tonum
LineInput#1,a
Print#2,a
Nexti
Close#2
Close#1
KillApp.Path&"\学生成绩信息管理.txt"
NameApp.Path&"\学生成绩信息管理temp.txt"AsApp.Path&"\电话.txt"
EndSub
PrivateSubCommand5_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
num=0
HScroll1.Min=1
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
DoWhileNotEOF
(1)
LineInput#1,a
num=num+1
Loop
Close#1
HScroll1.Max=num
EndSub
PrivateSubHScroll1_Change()
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
Fori=1ToHScroll1.Value
LineInput#1,x
Nexti
Text1.Text=Trim(Left(x,10))
Text2.Text=Trim(Mid(x,11,20))
Text3.Text=Trim(Mid(x,31,20))
Close#1
n=HScroll1.Value
EndSub
7删除代码
DimnAsInteger
DimnumAsInteger
PrivateSubCommand1_Click()
k=MsgBox("是否确定要删除?
",vbYesNo+vbExclamation,"删除一条数据")
Ifk=6Then
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
OpenApp.Path&"\学生成绩信息管理temp.txt"ForOutputAs#2
Fori=1Ton-1
LineInput#1,a
Print#2,a
Nexti
LineInput#1,a
Fori=n+1Tonum
LineInput#1,a
Print#2,a
Nexti
Close#2
Close#1
num=num-1
HScroll1.Max=num
KillApp.Path&"\学生成绩信息管理.txt"
NameApp.Path&"\学生成绩信息管理temp.txt"AsApp.Path&"\学生成绩信息管理.txt"
EndIf
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
num=0
HScroll1.Min=1
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
DoWhileNotEOF
(1)
LineInput#1,a
num=num+1
Loop
Close#1
HScroll1.Max=num
EndSub
PrivateSubHScroll1_Change()
OpenApp.Path&"\学生成绩信息管理.txt"ForInputAs#1
Fori=1ToHScroll1.Value
LineInput#1,x
Nexti
Text1.Text=Trim(Left(x,10))
Text2.Text=Trim(Mid(x,11,20))
Text3.Text=Trim(Mid(x,31,20))
Close#1
n=HScroll1.Value
EndSub
8参考文献
1.将加伏,张林峰,VisualBasic程序设计教程,北京,北京邮电大学出版社,2004
2.刘天慧,VisualBasic程序设计教程,北京,清华大学出版社,2006
3.曾强聪,VisualBasic6.0程序设计教程,北京:
中国水利水电出版社2003
4.武马群,VisualBasic程序设计教程,北京,北京工业大学出版社,2004
5.张基温。
信息系统开发案例。
北京;清华大学出版社,1999;
6.党建武。
管理信息系统。
兰州大学出版社,2001;
7.毕庶伟。
管理信息系统分析与设计。
北京,机械工业出版社,1992。
8.黄梯云。
企业管理模型及微型机应用程序。
石家庄,河北人民出版社,1985.