vb课程设计实习报告

2022-09-28

实习是学生一个阶段学习后的重要内容,通过实习能让学生将所学理论知识应用于社会实践中,很多学生认为抽象的理论知识,在实习阶段都会豁然开朗,大有“柳暗花明又一村”的感觉下面是小编为大家整理的《vb课程设计实习报告》的文章,希望能够很好的帮助到大家,谢谢大家对小编的支持和鼓励。

第一篇:vb课程设计实习报告

VB 课程设计

学生成绩管理系统

一、 功能描述

首先简单地阐述本人所要实现系统的目的,然后应较详细的叙述本系统所要实现的功能。

************ *******

二、 概要设计

1、系统功能模块框图设计

根据功能描述,建立系统的体系结构,即将整个系统分解成若干子功能模块,并用框图表示各功能模块之间的衔接关系,并简要说明各模块的功能。

程序流程框图如图所示:(仅供参考)

图1 程序流程图

2、数据库设计

包括数据库的组成说明,数据库中各表的结构说明(包括字段名、字段类型等),可以包含图片例如下表:

表1 学生信息表

三、 详细设计

详细说明主要窗体的实现过程,包括窗体的设计图片及其上所包含的控件名和属性设置;

详细说明主要操作的代码实现过程,包括过程间的调用关系(注:在此给出不完全代码)。如下所示:

1、账号登录

帐号登录模块中登录与注册两按钮,单击注册会进入注册模块中,单击登录会进入系统进行下一步的操作,帐号文本框与数据库相连接,当在帐号文本框输入帐号后点击登录按钮后,会在数据库中进行查询看数据库中是否会有该帐号,且该帐号的密码是否与密码框中输入的相同,如果相同会进入系统,如果不存在该账号或密码与帐号不相匹配,则会提示“帐号或密码错误”,帐号文本框会得到焦点,让重新输入。

(1)窗体截图(如图2)

图2 注册窗体

(2)功能实现

2、学生信息查询窗体

图3 查询窗体

四、 调试中存在的问题及解决方法

包括调试过程中遇到的主要问题及采取的解决方法。例如:

1、注册账号出现的错误

数据库中帐号被设为主键,当注册时的帐号与数局库中的帐号有相同时就会出错。

2、解决方法:在写入数据库前先进行查询数据库

五、 心得体会

本人在本次实习中取得的收获、遇到的困难、如何面对和克服各种困难、本系统的不足之处,将要改进的思想等。

六、 参考文献

[1] 罗朝盛. Visual Basic 6.0程序设计教程(第3版). 人民邮电出版社,2009年2月

[2] [3]

七、 附录

包括全部源程序清单(程序中应有足够的注释)。

第二篇:VB程序设计课程设计

1、目的

VB程序设计课程设计是考察学生对VB程序设计课程相关知识点掌握情况的重要环节,也是激励学生进一步学习VB、提高运用VB开发实际计算机程序的能力。课程设计的重点在于学生利用VB开发程序的能力。

2、课程设计题目

学生信息管理系统

3、程序功能

该程序具有建立数据库,建立数据库表,添加数据,删除数据,查询学生每学期成绩、不及格情况、积点情况等相关信息的功能。

4、实现要求

每个学生建立一个数据库(名字自拟),数据库中建立学生基本信息表(学号、姓名、性别、出生年、出生月、出生日、联系电话、年级、班级、住址等)、学生成绩表(学号、课程号、成绩、学期等)、课程信息表(课程号、课程名称、出版社、出版日期、版次、页码、价格、课程类型(基础课、专业基础课、选修课等)、开课学院等)。

把课程信息、每一学期的成绩等分别输入相应的表中,其中学生基本信息表记录不少于5个学生的信息。

在以上数据的基础上,实现相关的程序功能(不仅仅第3条指定的功能)。

设计多界面程序,相关查询结果应由不同的界面显示,每个同学显示结果的形式应尽量不同。

5、考核

根据学生实现程序功能多少(40分)、界面设计情况(20分)、课程设计报告撰写情况(20)、答辩情况(20分)进行考核。雷同者应重做。

6、课程设计报告内容

1)课程设计题目

2)课程设计的目的

3)程序功能介绍

4)程序界面设计与控件属性设置

5)程序代码编写

6)程序演示(将运行过程用截图方式截下来,并对输入数据、输出的结果进行适当说明)

7)课程学习与课程设计心得体会

7、上交材料

本次课程设计以小班为单位上交如下资料:

1)光盘:每一小班建立一个目录(专业年级班级),在此目录下建立每个同学的目录(学号姓名),在每个同学的目录下保存该同学的电子版的课程设计报告、打包的程序。

2)纸制版的课程设计报告

第三篇:Vb课程设计-职工信息系统.

职工信息系统设计报告

一、设计思路 1.要达到的目的

培养学生综合利用VB语言进行程序设计的能力,主要是培养学生综合使用基本控件的、文件读写、数组操作和菜单设计等能力。

2.关键问题的解决 ①设置属性

设计时要注意一些功能需要在其它功能之后才能使用,如“平均工资”、“高于平均”等按钮需要在读入数据后才能使用,设计界面时需要将相应的按钮的Enable属性为false,在读入数据后才设置Enable属性为True。

②编写代码

需要对每一个窗体编写事件处理过程。最主要的工作包含在主窗体中,代码包括事件处理过程和必要的声明。变量声明部分声明本程序所需要的变量和数组,由于单击按钮时,都要对姓名、职称、工资进行操作,因此相应的数组和变量应定义为模块级的。在编写事件处理过程代码时注意以下几点: (1定义动态数组分别用于存放姓名、职称、工资数据。

(2单击“读取数据”按钮,利用通用对话框所提供的打开标准对话框来选择要打开的数据文件,并利

用文件的基本操作将该文件中的的数据依次读入到相应数组中。注意为保留动态数组中存放的内容,在使用ReDim语句中要加上Preserve关键字。

(3计算职工的平均工资,并存放在平均工资变量,此变量应定位模块级的。

(4利用InputBox 函数来输入要追加的学生的信息。 (5利用InputBox 函数来输入要删除的职工的姓名。

利用MsgBox 函数或另一个窗体来显示高于及等于(或低于平均工资和分类汇总的结果。。。。

二、部分程序关键源代码及注释 Dim i As Integer, aver As Single Dim a( As String, b( As String, c( As String Private Sub Command1_Click( Dim str As String CommonDialog1.Filter = "txt (*.txt|*.txt|all file(*.*|*.*" CommonDialog1.FilterIndex = 1 On Error GoTo usercancle CommonDialog1.ShowOpen usercancle: Text1 = "姓名职称工资" fileno = FreeFile Open CommonDialog1.FileName For Input As #fileno i = 1 Do While Not EOF(fileno

ReDim Preserve a(i, b(i, c(i Input #fileno, a(i, b(i, c(i str = a(i & " " & b(i & " " & c(i Text1 = Text1 + vbNewLine + str i = i + 1 Loop Close #fileno i = i1 Print i aver = sum / i s1 = "职工的平均工资为:" & aver s2 = "职工总人数:" & i MsgBox s1 & vbCrLf & s2, , "zh1" Command3.Enabled = True Command4.Enabled = True End Sub Private Sub Command3_Click( Dim x As Integer, l1 As String, m1 As String Form2.Text1 = "姓名职称工资" Form2.Text1 = Form2.Text1 & vbNewLine & "--------------------------" x = 0 Print i For i = 1 To i If c(i >= aver Then x = x + 1

l1 = a(i & " " & b(i & " " & c(i Form2.Text1 = Form2.Text1 & vbNewLine & l1 End If Next i i = i1 Print i Form2.Text1 = Form2.Text1 & vbNewLine & "--------------------------" m2 = "工资小于平均工资的人数" & y Form2.Text1 = Form2.Text1 & vbNewLine & m2 Form2.Caption = "工资小于平均工资的人数" Load Form2 Form2.Show End Sub Private Sub Command5_Click( Dim n1 As Integer, n2 As Integer, n3 As Integer, n4 As Integer Dim str1 As String, str2 As String, str3 As String, str4 As String For i = 1 To i

If a(i = "教授" Then n1 = n1 + 1 ElseIf b(i = "副教授" Then n2 = n2 + 1 ElseIf c(i = "讲师" Then n3 = n3 + 1 Else n4 = n4 + 1 End If Next i i = i1 a(i = a(i + 1 b(i = b(i + 1 c(i = c(i + 1 Next i i = i1 Print i End Sub Private Sub manu1_Click( Dim m1 As Integer, m2 As Integer m1 = InputBox("请输入工资下限" m2 = InputBox("请输入工资上限" Form2.Text1 = "姓名职称工资" r = 1 For i = 1 To i If c(i >= m1 And c(i <= m2 Then r = r + 1 str5 = a(i & " " & b(i & " " & c(i Form2.Text1 = Form2.Text1 & vbCrLf & str5 End If Next i i = i1 For j = i + 1 To g If Val(c(i > Val(c(j Then t = c(i c(i = c(j c(j = t t = a(i a(i = a(j a(j = t t = b(i b(i = b(j

b(j = t End If Next j Next i i = i1 For j = i + 1 To g If Val(c(i < Val(c(j Then

t = c(i c(i = c(j c(j = t t = a(i a(i = a(j a(j = t t = b(i b(i = b(j b(j = t End If Next j Next i i = i - 1 Form2.Text1 = "姓名职称工资" For i = 1 To i str7 = a(i & " " & b(i & " " & c(i Form2.Text1 = Form2.Text1 & vbNewLine & str7 Next i Form2.Caption = "降序排序" Load Form2

Form2.Show End Sub Private Sub manu5_Click( End End Sub

三、设计方案的完善及目前存在的问题 1.设计方案要完善的地方 ①对编程语言的进一步完善 ②对程序的调用 ③程序不够人性化 2. 目前存在的问题 ①编程语言不够流畅。

四、本次设计的收获及心得体会

对VB理解不深刻,知识匮乏,但这是颇有实际用处的,认真学习vb,不断认识自己的不足,并不断改进。认真学习科学知识,在学习中充分实践。把运用与学习结合在一起。

五、对该题目和VB设计的意见和建议 1. 对该题目的意见和建议 该程序应该充分与现实结合。

让程序更容易让顾客进行操作。 更加人性化。

2.对本次设计的意见和建议

设计课程比较实用,但颇有难度,希望以后能给我们较多时间进行设计,并请老师多帮助解决疑难问题,谢谢。

第四篇:有关VB课程设计心得体会

VB课程是计算机科学与技术本科专业的专业骨干课。本课程主要通过VB论述了面向对象程序设计和组建编程的机理,以下是小编整理的有关课程设计心得体会范文,欢迎阅读。

有关VB课程设计心得体会范文一

经过近一个月的设计与制作,我们组的《20xx世界杯观战指南》终于完成了,现将过程中遇到的问题、获得的体会记录如下。

这次数据库课程设计中我主要负责用户登录、注册及数据库维护方面的设计。

1.Delphi是一款功能很强大的软件,其控件之多超出了我的想象,因此在运用时要借助很多资料。要学会查找和利用现有资料来解决问题

2.在设计中用到了很多SQL语句,因此对SQL及程序语句地掌握也是必不可少的。

3.后期的软件制作都是以前期的工作为基础的,因此在前期的需求分析及数据库设计阶段要认真、细致。

4.我们是三个人的小组,在设计过程要互相协调,合作。这样才能充分发挥每个人的作用。

有关VB课程设计心得体会范文二

数据库课程设计大赛的尘嚣渐渐远去,怀着对这次大赛的些许不舍,怀着对当初课程设计开始时候的豪情万丈的决心的留恋,怀着通过这次课程设计积累的信心与斗志,我开始写这篇文章,为自己的足迹留下哪怕是微不足道但是对自己弥足珍贵的痕迹并期望与大家共勉。

首先,让我的记忆追溯到大二暑假,在老大的指引下(老大劝我学.net),我接触到microsoft 公司的.net产品。那个时候我已经学过vc和asp,因为windows程序设计实验的课的关系,接触过vb,但是没有专门去学他,因为习惯了c++里面的class,int,觉得vb的sub,var 看着就不是很顺心。我是一个好奇心很强的人,突然看到了一个号称.net是用于创建下一代应用程序的理想而又现实的开发工具,而且主推c#语言,由于对c语言的一贯好感,我几乎是立刻对他产生了兴趣。我就开始了对c#的学习,任何语言都不是孤立存在的,所以数据交互是很重要的,暑假的时候我把我们这学期的课本数据库系统概论看了一遍()。我记得以前用c语言编程的时候,数据是在内存中申请空间,譬如使用数组等等。很耗费内存空间。这个时候就是数据库站出来的时候啦,于是我又装上了sql server2000,以前学asp的时候用的是access,那个时候只是照着人家做,理论是什么也不是很清楚。

通过一个暑假的学习,基本搞清楚了理论方面的东西,具体怎么用也不是很清楚。但是这为这学期的课程设计打下了铺垫。

来到学校后,随着这学期的数据库课程大赛开始了,我有一个看法就是我自己应该具备的能力不是我会多少,而是我应该具备快速学会东西的能力。遇到什么就学什么。我们有时候很容易被一些专业名词说吓着,包括什么建模,软件工程,数据分析,数据挖掘等等。我身边就有很多同学被这些纸老虎所唬住,而没有勇气去接触他们,总是说这个太难了之类的退堂鼓的话,他们低估了自己的潜力同时也压抑住了他们自己的好奇心。

其实都是纸老虎,又不是什么国家科研难题,只是去用一些工具,发明工具是很难,但是用一个工具就容易多了,just do it!我记得我做这个数据库之前,我们老师说要做好前期分析,我就在网上搜索用什么分析工具好。最后我选择了roseuml建模工具。在此之前,我脑袋里面没有软件建模的思想,什么uml建模对我而言就是一张空白的纸。但是真正接触后并没有想象的那么难,有什么不懂的上网去搜索,这是一个信息横流的世界,有google,baidu就没有不能解决的知识难题。以及后来的数据库分析的时候用到的powerdesigner也是一样。

开发的时候我想过用什么架构,c/s模式?模式有很多,怎么选择?我就上网搜索现在最流行的架构是什么。结果搜到了mvc架构,就是你啦。我决定用这个架构,不会,没关系,咱学。just do it!前期工作准备好后,那么我就得把我暑假学的.net加以实践。这个时候我更加深入的了解了利用ado.net操纵数据库的知识。并且对数据库里面的存储过程有了比较深入的了解。经过大概2个多星期的奋斗,我完成了我的数据库课程设计--基于.net数据集的图书馆管理系统。并最后非常荣幸的获得了大赛的一等奖以及以及新技术应用奖。

与其临渊羡鱼,不如退而结网。这次数据库课程设计给我的最大的印象就是如果自己有了兴趣,就动手去做,困难在你的勇气和毅力下是抬不了头的。从做这个数据库开始无论遇到什么困难,我都没有一丝的放弃的念头。出于对知识的渴望,出于对新技术的好奇,出于对一切未知的求知。我完成了这次数据库课程设计,不过这只是我学习路上的驿站,未来十年.net的核心技术就是xml[至少微软是这么宣传的],我会继续学习它,包括jave公司的j2ee我也很想试试,语言本来就是相通的,just do it!语言并不重要毕竟它仅仅是工具,用好一个工具并不是一件值得为外人道的事情,主要是了解学习思想。古语说的好:学无止境啊!

我很庆幸我参加了这次数据库大赛,让我确实打开了眼界。

有关VB课程设计心得体会范文三

VB课程是计算机科学与技术本科专业的专业骨干课。本课程主要通过VB论述了面向对象程序设计和组建编程的机理,涉及到控制台界面程序、Windows窗体程序、图形界面编程、数据库、网络应用系统等多方面的内容。内容量大,程序设计复杂、同时VB程序调试是在VS环境下进行,在编程过程中环境会自动为用户生成一些必要代码,以降低编程难度,降低学生的编程负担,但这也带来了一些问题,如:学生对VB的程序结构把握和了解不全面,对编程机理了解不透彻,学生容易盲目照搬书上代码,不求甚解,似是而非。为了解决这个问题,我们采取了课程设计的方法来加深学生对知识的理解,将书本知识迁移到新的问题解决中,提高学生分析问题和解决问题的能力。

要求学生在学习该课程中,应用每个相对独立的、完整的单元知识解决一个实际项目,设计编写一个小作品;学完整个课程后,完成一个综合性比较强的编程项目,使学生对整个课程内容进行全面的总结、梳理,以项目完成为手段,全面锻炼学生分析问题和解决问题的能力。

一. 目的

1. 为使学生掌握VB编程、面向对象程序设计思想和组建编程的知识实际技能,除了系统地讲授必要的VB知识,上机练习,做作业外,还应该对学生作较全面的编程技能和分析问题解决问题的能力训练,即作课程设计,以达到如下目的:具体应用和巩固本课程及有关先修课的基础理论和专业知识,了解面向对象程序设计思想,掌握应用VB.NET编程和组建编程程序设计方法,培养学生初步的项目设计能力。

2. 独立地根据一定的项目要求,查阅资料,写出项目开发目标,分析开发过程中所用到的课程知识,提出解决方案,编码并上机调试完成系统,培养学生分析问题和解决问题的能力。课程设计是教学过程中的一个重要环节,必须认真对待。

二. 要求

在课程设计中要求学生注意培养认真负责,踏实细致的工作作风和保质保量,按时完成任务的习惯。在设计过程中必须做到:

1. 在某个教学单元结束后,完成一个教师布置的、或学生自己拟定的、知识覆盖整个章节的,有一定综合性和难度的项目,要求学生描述出要达到的目标、围绕目标,收集资料和素材,复习所需的课程知识,描述问题解决方案、编写程序上机调试,直到项目的完成。最后的成果要有完成的作品和相应的文档。

2. 在课程结束后,完成一个大的编程项目,其要求与课程单元的项目差不多,只是综合性更强、难度更大、知识覆盖面更广,工作量更大,以全面促进学生复习和梳理学科教学内容,提升学生分析问题、解决问题和文档的书写和编制。

三、采取的措施

为了保证课程设计能够按照预定的目标和计划进行,我们还采取了以下措施来加强对学生监督和管理。

1.首先讲清楚课程设计的意义,让学生能够自觉积极主动地进行课程设计,发挥学生的主观能动性;

2.在课程设计过程中,教师随时巡视和监督,了解把握和控制课程设计的进展;

3.将学生的作品集中展示、评价、打分,可以让学生在展示的过程中获得成就感、自豪感,学生之间可以相互学习、取长补短,同时在此过程中可以明确标准,自觉地按照标准来调整自己地学习;

4.将课程设计作为学期成绩的一部分记载,大约占10%,必须完成课程设计后才能参加考试,课程设计不过关,即使考得再好,也不能过。

四、取得的效果

通过以上措施,学生全部都完成了自己的项目、将所有的作品通过超链接网页的方式集成在一个作品集中,所有的学生都完成了4~6个小作品,每个作品都反映了学生应用课程的某部分知识解决某个问题的结果,通过完成这些作品,学生巩固、加深了对相关知识的理解,加强了知识之间的联系,促进了知识的迁移和应用。同时学生看到凝聚着自己的心血、汗水、思维和创新的作品,就像一个母亲看到自己呱呱坠地孩子那样充满了喜悦,激发了学生的创造欲望。通过同学之间作品的对比,提供了一个相互学习交流的平台,激发了学生的竞争意识。总之通过课程设计受到了良好的多方面的效果,从考试成绩来看,2004级本科全部都及格了。

第五篇:vb课程设计档案管理系统代码

一、 登陆界面

运行本系统需要进行用户名和密码验证,没有用户名的可以在登陆界面注册,详细注册方法在下文有介绍。登陆界面效果图如图1-1:

图1-1 登陆界面设计的代码如下:

Private Sub Command1_Click() str1 = Text1.Text str2 = Text2.Text STRSQL = "SELECT * FROM 密码表 WHERE 用户名= & str1 & " + " AND 密码= & str2 & " Data1.RecordSource = STRSQL Data1.Refresh If Data1.Recordset.EOF Then

MsgBox "用户名或密码错!", 16, 提示" Else

Form8.Show

Form1.Hide End If End Sub

Private Sub Command2_Click()

End End Sub

Private Sub Command3_Click()

Form6.Show End Sub

Private Sub Timer1_Timer()

Label1.Caption = Time End Sub

二、 欢迎界面

当用户名和密码验证成功后即可进入欢迎界面如图2-1

图2-1 在欢迎界面的设计时用了一个时钟控件,让欢迎界面出现3秒后自动消失进入系统主界面,欢迎界面的代码设计如下:

Private Sub Timer1_Timer()

If Timer1.Enabled = True Then

Form8.Hide

Form2.Show

Timer1.Enabled = False

End If End Sub

三、 系统主界面

系统主界面可以进行简单的信息浏览(如图3-1),在主界面设置了一些命令按扭,其中 “修改”、“删除”、“打印”可以在主界面直接进行,而“查询”和“添加”需要打开另一个窗体操作。代码设计如下:

Private Sub Command6_Click()

Data1.Recordset.MoveFirst End Sub Private Sub Command7_Click()

Data1.Recordset.MovePrevious

If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst End Sub Private Sub Command8_Click()

Data1.Recordset.MoveNext

If Data1.Recordset.EOF Then Data1.Recordset.MoveLast End Sub Private Sub Command9_Click()

Data1.Recordset.MoveLast End Sub Private Sub Form_Load()

Timer1.Enabled = True

Label11.Left = Me.Width End Sub

2 Private Sub Command10_Click() DataReport1.Show End Sub Private Sub Command3_Click()

ans = MsgBox("确认修改Ä?", 32 + 1, 提示")

If ans = 1 Then

mbookmark = Data1.Recordset.Bookmark

Data1.Recordset.Edit

End If End Sub

Private Sub Command4_Click()

On Error Resume Next

Data1.Recordset.Delete

Data1.Recordset.MoveNext

If Data1.Recordset.EOF Then Data1.Recordset.MoveLast

MsgBox "确认删除?", 32 + 1, "提示" End Sub

Private Sub Timer1_Timer()

Label11.Left = Label11.Left - 200

If Label11.Left <= -Label11.Width Then

Form2.BackColor = vbRed

End If End Sub Private Sub Timer2_Timer()

Label12.Caption = Time End Sub

图3-1

四、 查询

查询的效果图如图4-1

图4-1 代码设计如下:

Private Sub Command1_Click()

a = "select * from学生档案 where "

n = 0 If Check1.Value = Checked Then

a = a + " 姓名= + DataCombo1 + "

Adodc1.RecordSource = a

Adodc1.Refresh

n = 1 End If If Check2.Value = Checked Then

If n = 1 Then

a = a + " and "

End If

a = a + " 学号 = + DataCombo2 + "

Adodc1.RecordSource = a

Adodc1.Refresh

n = 1 End If If Check3.Value = Checked Then

If n = 1 Then

a = a + " and "

End If

a = a + " 院系= + DataCombo3 + "

Adodc1.RecordSource = a

Adodc1.Refresh

n = 1 End If

If Check4.Value = Checked Then

If n = 1 Then

a = a + " and "

End If

a = a + " 专业= + DataCombo4 + "

Adodc1.RecordSource = a

Adodc1.Refresh

n = 1 End If If Check5.Value = Checked Then

If n = 1 Then

a = a + " and "

End If

a = a + " 班级= + DataCombo5+ "

Adodc1.RecordSource = a

Adodc1.Refresh

n = 1 End If If Check6.Value = Checked Then

If n = 1 Then

a = a + " and "

End If

a = a + " 入学时间= + DataCombo6 + "

Adodc1.RecordSource = a

Adodc1.Refresh

n = 1 End If End Sub

五、 添加

添加效果图如图5-1

图5-1

代码设计如下:

Private Sub Command1_Click()

If Command1.Caption = "Ìí¼Ó" Then

Command1.Caption = "È·ÈÏ"

mbookmark = Data1.Recordset.Bookmark

Data1.Recordset.AddNew

Data1.Recordset.MoveLast

Data1.Refresh

Text1(0).SetFocus

End If

MsgBox "È·ÈÏÌí¼Ó?", 32 + 1, "Ìáʾ" End Sub

Private Sub Command2_Click() For i = 0 To 13

Text1(i) = "" Next i

Text1(0).SetFocus End Sub

Private Sub Command3_Click()

Unload Form4 End Sub

六、 修改、删除、打印

这部分的效果图如图6-

1、图6-2

图6-1

6

图6-2

代码设计如下:

Private Sub Command4_Click()

On Error Resume Next

Data1.Recordset.Delete

Data1.Recordset.MoveNext

If Data1.Recordset.EOF Then Data1.Recordset.MoveLast

MsgBox "确认删除?", 32 + 1, "提示" End Sub

Private Sub Command3_Click()

ans = MsgBox("确认修改?", 32 + 1, "提示")

If ans = 1 Then

mbookmark = Data1.Recordset.Bookmark

Data1.Recordset.Edit

End If End Sub

Private Sub Command6_Click()

Data1.Recordset.MoveFirst End Sub

七、 统计

必须添加一个MSFlexGrid控件与Data控件连接,用来保存统计的结果,统计的效果图如图7-1

图7-1

代码设计如下:

Private Sub Command2_Click(Index As Integer)

Data1.RecordSource = "select 院系,count(*) as人数 from学生档案¸ group by 院系"

Data1.Refresh End Sub Private Sub Command3_Click()

Data1.RecordSource = "select专业,count(*) as人数 from学生档案¸ group by 专业"

Data1.Refresh End Sub Private Sub Command4_Click()

Data1.RecordSource = "select 入学时间,count(*) as人数 from学生档案¸ group by入学时间"

Data1.Refresh End Sub Private Sub Command5_Click()

Data1.RecordSource = "select 籍贯,count(*) as人数 from学生档案¸ group by 籍贯"

Data1.Refresh End Sub Private Sub Command6_Click()

Data1.RecordSource = "select 民族,count(*) as人数 from学生档案¸ group by 民族"

Data1.Refresh End Sub Private Sub Command7_Click()

Data1.RecordSource = "select 政治面貌,count(*) as人数 from学生档案¸ group by 政治面貌"

Data1.Refresh End Sub Private Sub Command8_Click()

Unload Form9 End Sub

八、 帐户管理

(一)帐号注册

由于本系统登陆需要用户名和密码验证,所以本系统设置了一个帐号注册的功能,其效果图如图8-

1、图8-2

图8-1

图8-2 帐号注册代码设计如下:

Private Sub Command1_Click() If Text1.Text = "" Then

MsgBox "你没有输入用户名!", 16, "提示"

Exit Sub End If If Text2.Text = "" Then

MsgBox "你没有输入密码!", 16, "提示"

Exit Sub End If If Text3.Text = "" Then

MsgBox "你没有再次输入密码!", 16, "提示"

Exit Sub End If

If Text2.Text <> Text3.Text Then

MsgBox "两次输入的密码不一致!", 16, "提示"

Exit Sub End If If Text2.Text = Text3.Text Then

If Command1.Caption = "注册" Then

Command1.Caption = "确认"

mbookmark = Data1.Recordset.Bookmark

Data1.Recordset.AddNew

Text1.SetFocus

Else

Command1.Caption = "注册"

Data1.Recordset.Update

Data1.Recordset.MoveLast

End If

Text3.Text = ""

MsgBox "恭喜你注册成功!", 48, "欢迎使用" End If End Sub

(二)密码修改

密码修改的效果图如图8-

3、图8-4

图8-3

10

图8-4 密码修改代码设计如下:

Private Sub Command1_Click() If Text1.Text = "" Then

MsgBox "你没有输入用户名!", 16, "提示"

Exit Sub End If If Text2.Text = "" Then

MsgBox "你没有输入旧密码!", 16, "提示"

Exit Sub End If If Text2.Text <> Text3.Text Then

MsgBox "旧密码错误!", 16, "提示"

Exit Sub End If If Text3.Text = "" Then

MsgBox "你没有输入新密码!", 16, "提示"

Exit Sub End If If Text4.Text = "" Then

MsgBox "你没有再次输入新密码!", 16, "提示"

Exit Sub End If If Text3.Text <> Text4.Text Then

MsgBox "两次输入的密码不一致!", 16, "提示"

Exit Sub End If If Text3.Text = Text4.Text Then

prompt = "确认修改?"

answer = MsgBox(prompt, 32 + 0, "确认修改")

If answer = vbYes Then

Data1.Recordset.Edit

Data1.Recordset.Fields(0) = Trim(Text1.Text)

Data1.Recordset.Fields(1) = Trim(Text3.Text)

Data1.Recordset.Update

Data1.Refresh

MsgBox "密码修改成功!", vbOKOnly, "密码修改"

End If End If End Sub

(三)帐号注销

效果图如图8-5

图8-5 代码设计如下:

Private Sub Command1_Click() If Text1.Text = "" Then

MsgBox "你没有输入用户名!", 16, "提示"

Exit Sub End If If Text2.Text = "" Then

MsgBox "你没有输入旧密码!", 16, "提示"

Exit Sub End If If Text2.Text <> Text3.Text Then

MsgBox "旧密码错误!", 16, "提示"

Exit Sub End If If Text2.Text = Text3.Text Then

On Error Resume Next

Data1.Recordset.Delete

Data1.Recordset.MoveNext

If Data1.Recordset.EOF Then Data1.Recordset.MoveLast

MsgBox "确认注销该用户?", 32 + 1, "提示" End If End Sub