常州机电毕业毕业设计论文.docx
《常州机电毕业毕业设计论文.docx》由会员分享,可在线阅读,更多相关《常州机电毕业毕业设计论文.docx(33页珍藏版)》请在冰豆网上搜索。
常州机电毕业毕业设计论文
常州机电职业技术学院
毕业设计(论文)
作者:
王祥学号:
50831127
系部:
信息工程系
专业:
计算机系统维护
题目:
基于VB的学校图书管理系统的设计与实现
指导者:
王云良
评阅者:
2010年7月
毕业设计(论文)中文摘要
学校图书馆管理系统用计算机管理图书是一种计算机应用技术的创新,在计算机还未普及之前图书管理都是由图书管理人员手工记帐的方式来操作的.现在一般的图书馆都是采用计算机作为工具,运用计算机图书管理程序来帮助图书馆管理员进行更有效的图书管理。
图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
关键词:
图书,面向对象,软件工程
毕业设计(论文)外文摘要
Title:
School-basedlibrarymanagementsystemVB
Abstract:
Inthelibraryoftheschoolmanagementsystemwithcomputermanagementbooksisacomputerapplicationtechnologyinnovation,notonthecomputerbeforethepopularityofmanagementbooksarebooksofaccountmanagementmanualapproachtotheoperation.LibrariesarenowgenerallyusedasatoolforcomputerThepracticalproceduresforthemanagementofcomputerbookstohelplibrariansmoreeffectivemanagementofthebook.BookManagementSystemisatypicalmanagementinformationsystem(MIS),includingthedevelopmentofitsbackgroundoftheestablishmentandmaintenanceofthedatabasefront-endapplications,aswellasthedevelopmentofboth.Theformersetuptherequirementsfordataintegrityandconsistencyofstrongdatasecurityagoodlibrary.Forthelatterapplicationsrequirefull-featuredandeasytouseandsoon.
Keywords:
books,Object-Oriented,SoftwareEngineering
1概述
1.1开发背景
学校图书馆管理系统用计算机管理图书是一种计算机应用技术的创新,在计算机还未普及之前图书管理都是由图书管理人员手工记帐的方式来操作的.现在一般的图书馆都是采用计算机作为工具,运用计算机图书管理程序来帮助图书馆管理员进行更有效的图书管理。
1.2图书管理系统产生的背景
图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
经过分析,我们使用MICROSOFT公司的VISUALBASIC开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。
1.3系统功能要求的分析
图书管理系统主要服务与图书管理人员,包含的功能模块主要有:
1)
图书管理:
图书类别管理,图书信息管理
2)读者管理:
读者管理,读者信息管理.
3)图书借阅管理:
借书管理,还书管理.
4)系统管理:
添加管理员,修改密码,退出系统
2开发软件及实现技术介绍
2.1开发软件介绍
本系统所采用的编程语言为visualbasic6.0与微软的access作为操作数据库.
现分别对其简单介绍:
VisualBasic6.0是Micrsoft公司出品的开发工具,VisualBasic是一种可视化的,面向对象的Windows开发语言,它具有易用,通用和开发效率高的特点。
随着微软对它不断地改进以及计算机本身性能的提高,使得VisualBasic越来越适合一般的应用程序开发。
正如BillGate所说,世界上绝大多数的Windows应用程序是用VisualBasic编写的。
在众多的开发工具中,我们为什么要选择VisualBasic6.0呢?
因为VB具有众多其它开发工具所没有的优点!
具体介绍如下:
1)开发的高效
2)语言的高效
3)编译的高效
4)执行的高效
5)维护的高效
基于以上理由,我们毫不犹豫的选择了VB6.0做为我们的开发工具!
!
主要的控件及其基本属性,事件简介
命令按钮类的控件:
1)Caption属性:
用来显示在控件上的标题。
2)Enable属性:
控制控件的激活状态灰色或可用。
3)Appearance属性:
值为1时,则以3D效果显示该控件,0则不然。
4)Backcolor属性:
用来改变在按钮上显示图像的背景色。
5)Cancel属性:
该属性决定按钮是否为一个”取消”按钮。
6)Default属性:
决定哪一个命令按钮控件是窗体的缺省命令按钮.
7)Font属性:
控制各种文字字体类型.
8)Left,top,height,width属性:
设定控件的位置与大小.
9)Style,picture属性:
决定按钮的显示方式是否为图像形式出现.
10)Visible属性:
确定控件运行时是否为可见.
11)Index属性:
当控件为一控件数组时,此属性值为该控件在数组的下标值.
12)DownPicture属性:
设置/返回一个对图片的引用,该图片在按钮被单击处于压下状态时显示。
13)DisabledPicture属性:
设置/返回一个对图片的引用,该图片在控件无效时显示在控件中。
14)MaskColor属性:
设置/返回一个在按钮的图片中作为“掩码“的的颜色
15)Picture属性:
设置返回commandButton控件中要显示的图片。
◆命令按钮类的事件:
1)单击事件――Click事件
(1)触发与适用
此事件是在一个命令按钮对象上按下然后释放一个鼠标按钮时发生。
命令按钮的Click事件仅对当单击鼠标时发生。
(2)事件处理过程
按钮单击事件的处理过程为:
PrivateSubobject-Click(IndexAsInteger)
其中Object为引发该事件的对象名称。
如果是命令按钮的控件是数组,则需要使用Index参数标识该控件。
2)获得焦点――GotFocus事件
(1)触发与适用
当命令按钮获得焦点产生该事件,获得焦点可以通过诸如Tab切换或单击对象之类的用户动作,或在代码中用SetFocus方法改变焦点来实现。
(2)事件处理过程
命令按钮GotFoucs事件处理过程为:
PrivateSubObject-GotFocus(IndexAsInteger)
3)LostFocus事件:
当一个对象失去焦点时发生
4)KeyDown事件:
当命令按钮具有焦点时按下一个键时发生
5)KeyUp事件:
当命令按钮具有焦点时释放一个键时发生。
6)KeyPress事件:
当用户按下或松开一个ANSI键时发生。
7)MouseDown事件:
当在命令按钮上按下鼠标按钮时发生。
8)MouseMove事件:
当命令按钮上移动鼠标时发生。
9)MouseUp事件:
当在命令按钮上释放鼠标按钮时发生。
◆标签框类的控件类的控件:
2)Caption属性:
在应用程序界面上加入说明。
3)Autosize属性:
决定控件是否自动改变大小以显示其全部内容。
4)Backstyle属性:
用以指示标签是否透明.
5)Bordstyle属性:
用以设定控件是否有边框。
◆文本框类的控件:
6)Text属性:
通过像text属性赋值的方法来改变该属性的值。
7)Maxlength属性:
该属性设定在文本框控件中能够输入的最大字符数。
8)Multline属性:
该属性设定text字符串中是否接受换行符。
9)Scrollbars属性:
该属性决定是否为文本框加滚动条。
10)Passwordchar属性:
该属性设定输入文本的特殊显示字符,在设计密码程序时非常有用。
11)Change事件属性:
文本框的内容发生改变时,相应的控件之间发生相应的改变,具有即时性。
12)Keypress:
事件由用户在文本框控件中按任意键触发。
13)Alignment属性:
设定控件中的文本对其方式
14)Appearance属性:
设定一个对象在运行时是否可以3D效果显示。
15)BackColor属性:
设置返回背景色
16)BorderStyle属性:
设置对象的边框样式
17)DataField属性:
设定数据使用者将被绑定到的字段名
18)DataFormat属性:
设定DataFormat对象,用于数据绑定
19)DataMember属性:
从数据供应程序提供的几个数据成员中返回/设定一个特定的数据成员
20)DataSource属性:
设定控件绑定的一个数据源
21)DragIcon属性:
设定图标,它将在拖放操作中作为指针显示
22)DragMode模式:
设定一个值,确定在拖放操作中所用方式
23)Enabled属性:
设置/返回运行时TextBox是否相应用户事件
24)Font属性:
设置/返回字体属性
25)ForeColor属性:
设置/返回文本的前景色
26)Height属性:
设置/返回TextBox的高度
27)IMEMode属性:
设置/返回数值用来确定输入方法编辑器的状态
28)Index属性:
设置/返回唯一的标识控件数组中该控件的编号
29)Left属性:
设置/返回TextBox控件的水平位置
30)Locked属性:
设置/返回TextBox中文本是否可编辑
31)LinkItem属性:
设置/返回DDE与另一个应用程序会话时,传给接受端的数据
32)MaxLength属性:
设置/返回一个值,指定在TextBox控件中能够输入的字符最大值
33)MouseIcon属性:
设置/返回自定义鼠标的图标
34)Top属性:
设置/返回TextBox控件的垂直位置
35)Tag属性:
存储过程所需的附加数据
◆文本框类的事件:
1)Change事件:
当改变文本框内容时发生
2)Click事件:
鼠标单击控件时发生
3)DblClick事件:
用鼠标左键双击控件时发生
4)DragDrop事件:
在一个完整的拖放动作完成或使用Drag方法,并将其Action参数设置为2时发生
5)DragOver事件:
在拖放操作正在进行时发生
6)GotFocus事件:
当一个命令按钮获得焦点时发生
7)LinkClose事件:
当一个DDE对话结束时发生
8)LinkError事件:
当一个DDE对话框过程中出现错误时,该事件发生
9)KeyDown事件:
当命令按钮具有焦点时按下一个键时发生
10)Validate事件:
在焦点转换到另一个控件之前发生,此时该控件的CausesValidation属性值设置为True
◆单选按钮类的控件:
36)Caption属性:
显示在控件上的文本,是单选按钮的标题。
37)Alignment属性:
决定单选按钮的标题在控件上的位置。
38)Enable属性:
该控件为灰色时为false,表示运行时不可用。
39)Index属性:
属性值表示为单选按钮组成的控件中某个按钮的索引值。
40)Tabindex属性:
建立控件时,vb自动为其分配一个tabindex值,利用tab键可以在控件之间切换焦点。
41)Value属性:
反映控件状态的属性,返回true表示已选择了该按钮。
42)Appearance属性:
设置/返回一个对象在运行时是否以3D效果显示。
43)BackColor属性:
设置/返回背景色。
44)Container属性:
设置/返回Form上的控件属性。
45)DataField属性:
设置/返回数据使用者将被绑定到的字段名。
46)DataFormat属性:
设置/返回DataFormat对象,一个绑定对象将附加到它。
47)DisabledPicture属性:
设置/返回一个对图像的引用,该图片在控件无效时显示在控件中。
48)DownPicture属性:
设置/返回一个对图片的引用,该图片在控件单击下处于压下状态时显示。
49)DragMode属性:
设置/返回一个值,确定在拖放操作中所用的方式。
50)Font属性:
设置/返回字体属性。
51)FontBold属性:
设置/返回字体粗体样式。
52)FontItalic属性:
设置/返回字体斜体样式。
53)FontStrikethru属性:
设置/返回字体删除线样式。
54)FontUnderLine属性:
设置/返回字体下划线样式。
55)FontName属性:
设置/返回控件中显示文本所用的字体大小。
56)FontSize属性:
设置/返回控件中显示文本所用的字体大小
57)Height属性:
设置/返回控件的高度。
58)MaskColor属性:
设置/返回一个在控件的图片中作为掩码的颜色。
59)MousePointer属性:
设置/返回一个值,该值指示在运行时当鼠标移动到对象上时显示的指针类型。
◆单选按钮类的常用事件:
1)Click事件:
鼠标单击控件时发生。
2)DbClick事件:
当在一个对象上按下和释放鼠标按钮并再次按下和释放按钮时,该事件发生。
3)DragDrop事件:
在一个完整的拖放动作或使用Drag方法,并将其Action参数设置位2时,该事件发生。
4)DragOver事件:
在拖放操作正在进行时发生。
5)GotFocus事件:
当获的对象焦点时发生。
6)LostFocus事件:
当对象失去焦点时发生。
7)KeyDown事件:
当控件具有焦点时按下一个键时发生。
8)KeyUp事件:
当控件具有焦点时释放一个键时发生。
9)KeyPress事件:
当用户按下或释放ANSI一个键时发生。
10)MouseDown事件:
当在控件上按下鼠标键时发生。
11)MouseMove事件:
在控件上移动鼠标时发生。
12)MouseUp事件:
在控件上释放鼠标时发生。
◆复选按钮类的控件:
60)Caption属性:
缺省为check1…。
61)Index属性:
该属性值为复选框控件数组的下标.
62)Value属性:
value为0表空白,为1表勾号,为2表示灰色勾号.
63)Container属性:
Form控件上的容器。
64)DataChangeed属性:
设置/返回一个值,指出被绑定的控件中的数据已经被某进程修改。
65)DataField属性:
设置或返回数据使用者将被绑定到的字段名。
66)DataFormat属性:
设置或返回DataFormat对象,用于数据绑定。
67)Datasource属性:
设置或返回控件绑定的一个数据源。
68)DisabledPicture属性:
设置或返回一个对图片的引用,该图片在控件无效时显示在控件中。
69)DownPicture属性:
设置或返回一个对图片的引用,该图片在控件被单击处于压下状态时显示。
70)DragIcon属性:
设置或返回图标,它将在拖放操作中做为指针显示。
71)DragMode属性:
设置返回一个值,确定在拖放操作中所用方式。
72)Font属性:
设置或返回字体的属性。
73)Name属性:
设置或返回控件的标识名。
74)Value属性:
设置或返回控件的状态。
◆复选按钮类的控件的基本事件:
1)Click事件:
鼠标单击控件时发生。
2)DragDrop事件:
在一个完整的拖放动作完成或使用Drag方法,并将其Action参数设置为2时发生。
3)DragOver事件:
在拖放操作正在进行时发生。
4)GotFocus事件:
在对象获的焦点时发生。
,
5)OLECompleteDrag事件:
当源部件被放到目标时发生,并通知源部件拖放操作被执行或取消。
6)OLEDragDrag事件:
当源部件决定放操作能发生,却源部件被放到目标部件时,此事件发生。
◆框架类的控件:
1)List属性:
列表框控件的表项是使用数组的方式保存,数组的每一个元素存储列表控件的一个表项
2)Listcount属性:
控件列表部分项目的个数。
3)Mutselect属性:
可以设置列表框为单选或允许多选属性.
4)Selectd属性:
标示一个数组,数组各元素为:
5)Selected(0),selected
(1)…
◆滚动条类的控件:
1)Value属性:
滚动条上滑块所在位置由value值所决定。
2)Max和min属性:
对value值的最大,最小进行限制。
3)Largechange属性:
用户点击滚动条与键头之间的区域时,value的改变量。
4)OnClick事件:
用来添加按钮的单击事件所执行的程序代码。
◆定时器类类的控件:
75)Interval属性:
表示定时的时间间隔,以毫秒为单位。
76)Enable属性:
为true时(缺省值),激活定时器开始计时;为false时处于休眠状态.
2.2数据库连接方式选择
Visualbasic6.0连接数据库的主要方式以下几种方式:
一是:
用data控件进行数据库链接,二是利用adodc(ADODataControl)进行数据库链接。
三是:
利用DataEnvironment进行数据库链接.四是利用ADO(ActiveXDataObjects)进行编程
:
现在我们来大致对这几种技术应用介绍:
1)用data控件进行数据库链接.
第一步:
给窗体添加一个Data控件。
第二步:
用Access建立一个名为Pad的数据库,在库中建立一个表Myset,给表添加四个字段:
backcolor(数据),forecolor(文本),fontname(文本),fontsize(文本)。
注意:
请将库文件存入程序所在目录。
如果你的机器没安装有Access,可通过VB建库。
2)利用adodc(ADODataControl)进行数据库链接:
使用adodata控件访问数据库可以完全不用编写代码,只需要通过简单的设置和操作其属性就可以实现与数据库的连接,通过绑定数据感知控件,就能提供一个访问数据库的界面,用来实现对数据库的浏览,贴加,删除,修改等操作。
3)利用DAO对数据库进行操纵:
在visualbasic中提供了两种与jet数据引擎接口的方法:
data控件与数据访问对象(DAO)DAO是databaseobject的英文缩写,要访问数据库一方面数据库要提供访问接口,另一方面要在编程环境中有对数据库的支持。
DAO模型是设计关系数据库系统结构的对象类的集合.他们提供了管理关系型数据库系统所需要的全部操作属性和方法,这其中包括建立数据库,定义表,字段和建立表间关系,定位和查询数据库等。
2.3关系数据库介绍:
关系数据库是目前各类数据库中最重要、最流行的数据库,他应用数学方法来处理数据库数据,是目前使用最广泛的数据库系统。
20世纪70年代以后开发的数据库管理系统产品几乎都是基于关系的。
在数据库发展的历史上,最重要的成就就是关系模型。
关系数据库系统与非关系数据库系统的区别是:
关系系统只有“表“这一种数据结构;而非关系数据库系统还有其他数据结构,对这些数据结构有其他的操作。
结构化查询语言SQL(StructuredQueryLanguage)是一种介于关系代数与关系演算之间的语言,其功能包括查询、操纵、定义和控制四个方面,是一个通用的、功能极强的关系数据库语言。
目前已成为关系数据库的标准语言
Microsoft Access介绍:
使用 Microsoft Access,可以在单一的数据库文件中管理所有的信息。
在这个文件中,用户可以将自己的数据分别保存在各自独立的存储空间中,这些空间称作表;可以使用联机窗体来查看、添加及更新表中的数据;使用查询来查找并检索所要的数据;也可以使用报表以特定的版面布置来分析及打印数据。
如果要保存数据,请为每一种类型的信息创建一个表。
如果要从查询、窗体或报表中的多个表中将数据合并在一起,就要定义各个表之间的关系。
如果要搜索并检索符合指定条件的数据,包括来自多个表中的数据,就要创建查询。
查询的同时也可以更新或删除多条记录,并对数据执行内嵌或自定义的计算。
如果要简单地直接在某个表中查看、输入及更改数据,请创建一个窗体。
在打开一个窗体时,Microsoft Access 将从一个或多个表中检索数据,并使用用户在“窗体向导”选择的版面布局或所创建的版面布局,将窗体显示在屏幕上。
如果要分析数据或将数据以特定的方式打印出来,请创建一个报表。
例如,可以打印一份将数据分组并计算数据总和的报表,也可以打印另一份带有各种数据格式的打印邮件标签的报表。
3图书管理系统的设计与实现
3.1系统的设计
3.1.1系统的概要设计
该系统考虑将整个系统分解成如下模块:
3.1.2系统的详细设计
1)读者类别表
图1
2)
读者信息表:
图2
3)借阅信息表:
图3
4)书籍信息表:
图4
5)图书类别表:
图5
6)系统管理表:
图6
3.2系统的设计与实现
3.2.1系统的主界面的设计与实现
图7
主界面代码:
PrivateSubadd_admin_Click()
frmadduser.Show
EndSub
PrivateSubadd_back_book_Click()
frmbackbookinfo.Show
EndSub
PrivateSubadd_book_info_Click()
frmaddbookinfo.Show
EndSub
PrivateSubadd_book_style_Click()
frmaddbookstyle.Show
EndSub
PrivateSubadd_lend_book_Cl