1、目 录摘 要 2第1章 开发背景和系统概述 31.1开发背景 31.2系统概述 31.3开发环境 3第2章 功能介绍 52.2系统软件结构 52.2系统功能介绍 6第3章 主要界面设计与关键模块设计 73.1主要界面设计 7第4章 系统数据库设计 124.1数据库系统 124.2系统数据库与VB的连接 124.3数据库逻辑结构设计 12总结 14参考文献 15附录 16摘 要为了更好的存储和管理个人的照片和相关的信息, 在Windows XP平台上,使用Visual Basic6.0+Access设计实现了个人照片的信息管理。电子相册分为5个窗口:系统登陆窗口,浏览窗口,添加窗口,修改窗口,查
2、找窗口。电子相册运行后,出现登陆界面,在登陆界面输入用户相关信息,系统验证后,登陆到浏览主界面,在浏览主界面上根据用户的不同需要。通过对窗口菜单的选择进入相应的管理界面,在相应的管理界面对所需管理的数据进行修改、添加、查找等操作。本系统实现的功能包括图片信息的浏览、删除、查找、添加、修改。本系统创建了一个数据库tupian.mdb和xinxi.mdb,数据库两个表:1.informatiao -信息包括图片、拍摄人、拍摄时间、照片描述等。2.用户管理-包括用户名。关键字:学生信息;信息管理;数据库中图分类号: TP311.52第1章 开发背景和系统概述1.1开发背景随着计算机办公自动化程度的不
3、断提高,开发各种数据库管理应用软件用于各项工作中能有效地提高工作效率,节省时间,能使学校的教学工作上一个新的台阶。用于管理的计算机已经非常普及,客观上提供了坚实的物质基础。国内市场上也有一些学生信息管理方面的软件出现,但都存在许多不足,如功能不够齐全等。随着高校的普遍扩招,在校学生人数急剧增加,通过人工管理学生信息的传统做法已经行不通了,更谈不上对大量数据的统计和分析了。客观上对整个学校掌控和实施有效的管理都有赖于对大量数据的分析和统计。而这项工作的完成必须借助计算机及相应的软件。在进行了大量社会实践调研之后,主要研究了现有的市场上的学生信息管理软件之后,客观地总结了已有的优点和存在的缺点和不
4、足,在此基础上研究设计完成了该学生信息管理系统。学校存在大量的表格数据,这些数据恰恰是关系数据库处理和管理的对象,只要将需要管理的信息有组织的输入到电脑中,使用该软件提供的功能就可以方便地进行统计分析、查询等工作量,从而大幅度地减轻了人的工作量和工作难度同时也大幅度地提高了工作效率。办公自动化是大势所趋,是历史发展的必然,只有顺应潮流才能有发展有进步。 1.2系统概述设计学生信息管理系统是为了完成学校对学生相关有用信息的高效率管理。综合考虑数据量,数据复杂程度和开发实现的难度,在开发中使用VB+Access来开发该管理系统。本系统具备了处理和应对学生信息管理方面相关的各种数据处理、查询、检索、
5、数据录入、数据编辑、针对EXCEL表格数据导入和数据导出、成绩的统计和分析等功能。系统投入使用后必将发挥积极重要的作用,完全取代以往数据事物人工低效管理的落后状态,使各项工作都有彻底的改观。本系统对输入的学生信息作检查后存放入数据库中,然后对数据做修改,再编译,查询,并对数据进行保护,能完成简单文档的编写、修改、和存储。系统创建的各个过程:目标设计、系统开发背景、系统功能分析、系统功能模块设计、数据库需求分析、数据库概念结构设计、数据库逻辑结构设计、数据库结构实现、各个功能模块的创建、系统的编译。1.3开发环境软件环境:操作系统:Microsoft Windows XP 开发工具:Visual
6、Basic6.0企业版 辅助软件:Microsoft Office2003硬件环境:兼容机 CUP:赛扬 1.1G CRT:17 硬盘:40G DDR12第2章 功能介绍传统个人照片和相关的照片信息管理手段主要依赖于手工操作,其效率低下,不利于信息的快速检索,所以基于现代信息资源管理的理念,结合传统学生信息的管理经验,将现代化的信息技术引入个人照片的存储和相关的信息的管理中,成为实现个人照片管理的必然之路。以下是我们基于日常生活中的管理经验所设计的电子相册所实现的相关功能的介绍。2.1系统软件结构自动浏览手动浏览删除返回登陆界面添加照片添加照片信息返回主窗口修改照片信息返回主窗口按拍摄人查找按
7、拍摄日期查找返回主窗口按拍摄地点查找修改窗口查找窗口浏览窗口添加窗口+启动窗口开 始主窗口登陆窗口2.2系统功能介绍开发这个系统目的就是为了帮助个人存储照片和管理相关的信息,实现个人照片的存储和相关信息的电子管理。首先个人的电子相册具有私密性,所以我们首先设计了个人的登陆界面,最大程度上保护了个人隐私的保护。在进入系统之后,出现的是主窗体,它的主要功能是进行照片和相关信息的浏览,另外它的主要的功能是可以提供以下功能界面的菜单条,在点击相关的功能按钮之后将进入相关的功能界面。在进入添加界面之后,用户可以添加照片和填写相关的照片信息,单击“确定”按钮实现信息的添加。在进入修改界面之后,用户可以修改
8、原有的照片信息。在进入查找界面之后,用户可以根据拍摄人、拍摄日期、拍摄地点进行照片的查找。在进入添加、修改、查找界面都可以返回主窗体,进行其它功能的运用。用户可在浏览界面,点击“返回登陆界面”,返回登陆界界面。在登陆界面上,点击“返回”,可退出系统,返回操作系统环境。第3章 主要界面设计与关键模块设计经过以上的需求分析和功能结构设计,已经完成了系统设计的初期制作。下面就要完成人机交互的界面。一个友好完善的界面不仅能够方便系统的使用者,还能使各个模块间的划分明确,结构更趋于完善。所以在进行系统开发的时候,一个友好的界面设计工作是必不可少的,也是十分重要的。下面就是对电子相册的界面的设计过程的详细
9、说明。3.1主要界面设计(1)系统登陆界面首先要创建一个登陆界面,即建立一个窗体来作为今后运行程序时的登陆界面。在每次电子相册启动的时候,都会显示登陆界面。用户首先要输入用户名,然后输入管理员口令。在系统验证完成并判断管理员名称、口令都正确有效后,系统将跳转到主界面,这就完成了电子相册的登陆界面:用户身份的验证:(2) 系统浏览主窗体此窗体是系统的窗体,任何其他模块的操作都需要在该模块下进行,通过对该窗体的菜单项操作实现其具体的功能。同时其它窗体作为该窗体的子窗体都将显示在该窗体的界面内。(3) 添加界面 此界面可以实现照片的添加和照片信息的添加。在该运行的界面中,点击“添加”按钮就可通过出现
10、的界面选择图片文件将图片装入到上方的图片框中来,最后点击“确定”按钮就可将照片以及其他相关信息一起写入数据库中,照片写入数据表的一个二进制字段中去。(4) 修改界面可以浏览所有照片的基本信息和照片信息及拍摄人、拍摄地点、拍摄日期、照片描述的修改。(5)查找界面第4章 系统数据库设计4.1数据库系统首先建立系统中所需要建立的数据库。可以使用Visual Basic6.0提供的可视化数据库管理器来实施Visual Basic6.0内置Access数据库和数据表的创建,当然也可以采用其他工具创建其他类型的数据库和数据表。Visual Basic6.0可以访问多种类型的数据库和数据表,如DBF数据库等
11、,剩余的工作就是通过Visual Basic6.0的内部控件和相应的连接数据库的专用接口进行与数据库的连接。4.2系统数据库与Visual Basic6.0的连接Visual Basic提供了与低层数据库系统的紧密连接。它支持不同的关系数据库管理系统并充分发挥每一个数据库的特长。生成独立应用或脱离服务器运行的服务以上的应用,Visual Basic连接数据库的方式有两种:1.通过使用Visual Basic 的DATA控件,这是VB中的一个内部控件。可以通过设置DATA控件的常用属性来连接 Access数据库。DATA控件的设置数据库名的属性是Data Base Name, 设置数据库数据表的
12、属性是Record Source。这两个属性可以在静态时设置,也可以在程序运行时动态地进行设置,这可以根据需要选择不同的方法,而动态地进行设置更具有较大的灵活性。2.通过使用由Visual Basic提供的专用的直接与数据库相连的接口:(ActiveX数据库对象)ADO又称为OLE自动化接口。通过设置ADO控件的属性页来连接数据库和数据表,同时选择合适的数据库驱动程序。ADO控件是一个ActiveX控件,使用之前首先要将它添加到控件中来,方法是:“工程”-“部件”,然后在弹出的“控件”页面中选择“Microsoft ADO Data Control6.0(OLEDB)”,然后点击“确定”按钮即
13、可。4.3数据库逻辑结构设计该学生信息管理系统采用Visual Basic6.0内置的Access关系数据库系统,以期达到与程序具有较好的兼容性。系统中运用到的数据库知识要求将数据库模块图转化为数据库逻辑结构。每个表格表示数据库中的一个数据表。数据库tupian.mdb由一个数据表构成,它的数据表的结构设计如下列所示。 (1)照片信息表的结构字段名数据类型长度作用图片Bindary 0存储照片信息拍摄人Text10每张照片的拍摄人拍摄地点Text20每张照片的拍摄地点照片描述Text50用户对照片进行描述(2)用户管理表的结构字段名数据类型长度作用用户Text10用户名的管理总 结设计电子相册
14、就是为了更快更好的存储及管理个人的照片及照片信息。本系统中设计了四大界面其中浏览界面作为主管理界面,添加、查找、修改作为功能界面存在。在设计过程中在技术上采用DATA控件, OLE控件,Data Gride控件和ADO控件联合操作。该系统是面向非连网计算机上的应用程序。由于时间的限制和考虑到自己的能力的问题,该系统版本信息的部分只有采用简化设计,并且没有论述数据库的安全设计。在设计中没有设计照片信息修改时的用户权限作用,这是设计中的一大缺点,需要改善。在此设计中,我们学习了Visual Basic6.0程序设计语言,并对其语法规则有了更深的了解。明白了根目录中的一些文件的作用。对于软件的设计就
15、是对各种知识的综合运用,他包括计算机语言的运用,数据的分析运用,对设计项目的过程分析,对软件运用范围的限定等好多的实际运用的重点知识。在本系统的设计过程中,得到了老师的多次指导,指导认真负责的工作态度,严谨的治学精神和深厚的理论水平使我们受益非浅,他无论在理论上还是实践中都给予我们很大帮助,使我们得到很大提高,这对于我们以后的学习和工作都有很大的帮助,感谢他耐心辅导及同学们的热心帮助,在此,我们真诚地向他们表示感谢!参考文献1尹贵祥编著.Visual Basic 6.0程序设计案例教程.中国铁道出版社,2005.12张军安编著.中文Visual Basic 6.0应用基础教程.西北工业大学出版
16、社,2006.5 3周峰编著.Visual Basic案例开发集锦.电子工业出版社,2005.94李敏业,王颖编著.Visual Basic + Access数据库应用实例完全解析.人民邮电出版社,2006.1附录 关键模块代码1.用户登录设计代码Private Sub Combo1_Click()Data1.Recordset.FindFirst (yonghu= & & Trim(Combo1.Text) & )End SubPrivate Sub Command1_Click()Dim n As IntegerData1.Recordset.FindFirst (yonghu= & &
17、Trim(Combo1.Text) & )If Data1.Recordset.NoMatch Thenn = MsgBox(系统没有此用户!, vbOKOnly + vbQuestion, )ElseIf Trim(Data1.Recordset.yonghu) Trim(Text1.Text) Thenn = MsgBox(所输入的密码不正确,请重新输入!, vbOKOnly + vbCritical, )Text1.Text = Text1.SetFocusElseData1.Recordset.EditData1.Recordset.yonghu = Trim(Combo1.Text)
18、Data1.UpdateRecordUnload Form1Load Form2Form2.ShowEnd IfEnd IfEnd SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub Form_Activate()Do While Not Data1.Recordset.EOF Combo1.AddItem (Data1.Recordset.yonghu) Data1.Recordset.MoveNext Loop If Data1.Recordset.EOF And Data1.Recordset.BOF Then Else Data1.
19、Recordset.MoveFirstEnd If End SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 ThenCall Command1_ClickEnd IfEnd SubPrivate Sub Timer1_Timer()If Label1.Top 8110 Then s = 0If s = 0 Then Label1.Top = Label1.Top - 20If s = 1 Then Label1.Top = Label1.Top + 20End Sub2.信息查询
20、界面的实现代码Private Sub Command1_Click()Data1.Recordset.DeleteData1.Recordset.MoveNextEnd SubPrivate Sub Command2_Click()If Not Data1.Recordset.BOF ThenData1.Recordset.MovePreviousEnd IfIf Data1.Recordset.BOF ThenData1.Recordset.MoveFirstEnd IfEnd SubPrivate Sub Command3_Click()If Not Data1.Recordset.EOF
21、 ThenData1.Recordset.MoveNextEnd IfIf Data1.Recordset.EOF ThenData1.Recordset.MoveLastEnd IfEnd SubPrivate Sub Command5_Click()Dim s As Strings = Data1.Recordset.BookmarkData1.Recordset.FindFirst (paisheren= & Trim(Text1) & )If Data1.Recordset.NoMatch Thenk = MsgBox(该照片不存在!)Data1.Recordset.Bookmark
22、= sEnd IfEnd SubPrivate Sub Command7_Click()CommonDialog1.FileName = 5005529.jpgCommonDialog1.Filter = *.jpg|*.bmpCommonDialog1.ShowSaveEnd SubPrivate Sub Command4_Click()Unload Form2Load Form1Form1.ShowEnd SubPrivate Sub Form_Activate()OLE1.Class = PowerPoint.Show.8OLE1.DisplayType = 0OLE1.SourceDo
23、c = D:vb演示文稿3.pptOLE1.Action = 0End SubPrivate Sub 去_Click()Unload Form2Load Form4Form4.ShowEnd SubPrivate Sub 上_Click()Unload Form2Load Form3Form3.ShowEnd SubPrivate Sub 想_Click()Unload Form2Load Form5Form5.ShowEnd Sub3.添加模块设计Private Sub Command1_Click()Data1.Recordset.AddNewCommonDialog1.ShowOpenL
24、abel8 = CommonDialog1.FileNamePicture1.Picture = LoadPicture(CommonDialog1.FileName)End SubPrivate Sub Command2_Click()Data1.Recordset.paisheren = Val(Text1)Data1.Recordset.paisheriqi = Val(Text2)Data1.Recordset.paishedidian = Val(Text3)Data1.Recordset.shijianmiaoshu = Val(Text4)Data1.Recordset.Upda
25、teDim s As Integers = MsgBox(该用户已成功添加, vbOKOnly, 添加)End SubPrivate Sub Command3_Click()Unload Form3Load Form2Form2.ShowEnd Sub4.修改模块Private Sub Command1_Click()Data1.Recordset.EditData1.Recordset.paisheren = Text1Data1.Recordset.paisheriqi = Text2Data1.Recordset.paishedidian = Text3Data1.Recordset.s
26、hijianmiaoshu = Text4Data1.UpdateRecordDim s As Integers = MsgBox(此用户已成功修改, vbOKOnly, 修改)End SubPrivate Sub Command2_Click()If Not Data1.Recordset.BOF ThenData1.Recordset.MovePreviousEnd IfIf Data1.Recordset.BOF ThenData1.Recordset.MoveFirstEnd IfEnd SubPrivate Sub Command3_Click()If Not Data1.Recor
27、dset.EOF ThenData1.Recordset.MoveNextEnd IfIf Data1.Recordset.EOF ThenData1.Recordset.MoveLastEnd IfEnd SubPrivate Sub Command4_Click()Unload Form5Load Form2Form2.ShowEnd Sub5.用户身份的验证Private Sub Combo1_Change()Data1.Recordset.FindFirst (paisheriqi= & & Trim(Combo1.Text) & )End SubPrivate Sub Command
28、1_Click()Unload Form4Load Form2Form2.ShowEnd SubPrivate Sub Command2_Click()Dim s As Strings = Data1.Recordset.BookmarkData1.Recordset.FindFirst (paisheren= & Trim(Text3) & )If Data1.Recordset.NoMatch Thenk = MsgBox(该信息不存在!)Data1.Recordset.Bookmark = sEnd IfEnd SubPrivate Sub Command3_Click()Dim s A
29、s Strings = Data1.Recordset.BookmarkData1.Recordset.FindFirst (paishedidian= & Trim(Text2) & )If Data1.Recordset.NoMatch Thenk = MsgBox(该信息不存在!)Data1.Recordset.Bookmark = sEnd IfEnd SubPrivate Sub Command4_Click()Dim s As Strings = Data1.Recordset.BookmarkData1.Recordset.FindFirst (paisheriqi= & Trim(Text1) & )If Data1.Recordset.NoMatch Thenk = MsgBox(该信息不存在!)Data1.Recordset.Bookmark = sEnd IfEnd Sub 19