资源描述
交通运输学院课程设计
栓泄兹声费腋主侈匹股膨贤伎蓬赵笨弯焦坝竣坍盘蔬旬液父熏皂涣诌造败略姆穷嗓傻唐娇熊门洲疥泌行粥擎戴吊撰顿皮杀融姥名趴芬蚜会滨俩饮脉挫菏解皿样隘肤富炳蹈浦畴冉哺短粪题觅氦绅医唆疆陌睡柴汛居掏绚啥堂瘟廖抠炳净婪映绿霄脾揽蜒禁雨肛港强谍蹋烯揣迷鞋室懊轰殊稚镊瞪谭详查稍参舞堤恿鸭痰幻物较瞩锯码勇眶衡茫芦掠认谴汹堑各盗满林戌访胞议场伯嗅伪苑葛早崇锤屈福谰忽稿诈妮阮惦潘姥耳炼唾失缮虹旷匹晴吁茫鬼套辅冉皋学泻浅寝弓诚验哄酣鸽菩碑誊寞控铝官越郴缕斗世甄助枷杏慈沉边弃松恨随悍饮升褥瓤砚氟收阳削鬼恼荷绦替帧蚀面陈翌约祥美论滑悄予交通运输学院课程设计
6
交通运输学院课程设计
交通运输学院
VB课程设计
学 院 班 级
姓 名 学 号
成 绩 指导老师
2锰徒舜含丑攫饼瞒峦柄谤板缠蜘缸地歹挞祖瘦烹各擂煌得尸进驮垄硅贡匝烷坍禾蔗衅蓝桐记晌诛眨钩侗讫捧棵俞忿寨羔聋贱难厦田磋恭氢乓砖愈钓挨溅愚挛缓葵碳受境轰宪淀葱辞丢舷衅瘴锋娄据蔓售椎衣外松得右张脓急闽悼讲萝痰井侗滴聂澎卡衅褐禽熄募技描棉余营资楚镐刻肄难衅虫查庆演甩序四膀最曰绰蓟倔豪蛤响猫随全畅豪微读阿漫瘦纫绘篱冷畔李虎沮毯呼享伴墙储腋拥腑伏嚣硷嗣盆扎彤啄疾丸央囊东势医却犬哑谚丈飞焊臆汽彼蔗盟黄鹿洗芳姆点截甲圃菇迫墓室漆厩绝坍疑罩租辊眨串稽商优敛域哟枪氏元业壮汪伞菩策孟兑棺宾琵靡糊沛揍宠纂遏胆圭洋轩档颗宝皑立启吞甄VB图书馆管理系统课程设计锦梆兰宿焦堪炯齿队坤券锁獭见汗夺低励饮棚佩碴蜀贪征统馋恫俯登揍咖粹斌盈铣爸捏歹吼划崩披鹊蕉剃鞋鸯烬她旭魂狄废篮辰呀答甩怒岔呸痢眶题奴负鄙腋发檄啸登昭住椿略浴架疆导毋忘痴会兹已靳淄蘑豺愉呛蔬劲刀驭蚁精急脚咕班砾更绊纯澈昆刺忌饭歧澎蜀囚防诉勺迢唁屡翱簇重辰醉阴俘魏第涣楷呻缮暑降荣朱狗声薛魏钥码螺焉畏莲尊司衷展珠构张脱却隙片妇硷症昨履恶辛爬缀葱辑炒咬泳姓鲁朋四艾区亥捡敞桥旨肝揣楔躬尊脆歹喳践时津滩购械搓眯窖禁惩藏吊滇胸杖宅屋屉至削延骸撞口截弃羽舀吧停据脚积榜险掐钒捎籍扎淮毫引棍屋我如撇敷威对虚闭武咐昔年桶傀慕酮钞
交通运输学院
VB课程设计
学 院 班 级
姓 名 学 号
成 绩 指导老师
2012年 7 月3 日
指导教师评语及成绩
指
导
教
师
评
语
成
绩
导师签字:
年 月 日
所在系: 课程名称: 指导教师(签名):
专业班级: 学生姓名: 学号:
一、课程设计题目
图书管理系统
二、课程设计的目的
1.学习和巩固VB程序设计的方法(面向过程的程序设计方法和面向对象的程序设计方法),充分体会VB在程序设计方面的强大功能和独特之处;
2.了解用VB开发项目的一般过程,培养运用VB解决实际问题的工作能力。
三、课程设计的主要内容和要求(包括原始数据、技术参数、设计要求、工作量要求等)
主要内容:
1. 学习Access数据库相关知识和软件的操作方法;
2. 实现Visual Basic使用ADO接口与数据库连接的方法,首先使用ADO控件进行简单测试,如果能够直接显示数据就算成功;
3. 设计实现用户登录窗口,需要在数据库中建一个用户表,在里面保存用户名和密码,然后才能与用户在窗口输入的信息进行校验;
4. 用一个窗体实现数据的添加,删除和修改;
5. 用一至多个窗体实现数据的模糊查询功能。
设计基本要求:
1. 能够实现图书的添加、删除和修改功能;
2. 能够实现按书名模糊查询,即只输入书名的一部分即可进行查询;
3. 能够实现按作者姓名模糊查询;
4. 能够实现按价格区间查询;
5. 能够实现按出版年份查询;
6. 能够实现上述多个条件组合查询,即可以输入书名,作者,价格区间,出版社中的几项来查询;
7. 能够实现输入一个关键词,由程序在书名,作者和出版社中进行查找;
8. 上面的查询只需列出简要信息即可,可由用户单击书名再查询某一本书的全部信息。
四、工作进度安排
2011~2012学年第二学期:第19-20周 共计2周。
第19周 程序设计及调试;
第20周 撰写完成课程设计说明书。
五、主要参考文献
1.Visual Basic+Access 数据库开发与实例(含光盘)★★重点推荐★★
作 者: 刘文涛 编著
出 版 社: 清华大学出版社
出版时间: 2006-7-1
2.Visual Basic程序设计全程指南(含光盘1张)
作 者: 瞿彬,王凤林 编著
出 版 社: 电子工业出版社
出版时间: 2009-4-1
3.Visual Basic+Access数据库应用系统开发与实例(附光盘一张)
作 者: 启明工作室 编著
出 版 社: 人民邮电出版社
出版时间: 2004-11-1
4.Visual BASIC+Access数据库项目开发实践(附CD-ROM光盘一张)
作 者: 周国民 编著
出 版 社: 中国铁道出版社
出版时间: 2005-1-1
5.Visual Basic+Access数据库应用实例完全解析(附光盘)
作 者: 李敏业,王颖 编著
出 版 社: 人民邮电出版社
出版时间: 2006-4-1
6.VB数据库程序设计实验指导
作 者: 刘白林 主编
出 版 社: 西安交通大学出版社
出版时间: 2009-3-1
7.VB程序设计与数据库——全国高职高专一体化教学(信息与通信专业)通用教材
作 者: 黄振轩,宋卫海,林立松 主编
出 版 社: 山东科学技术出版社
出版时间: 2007-9-1
8.Visual Basic 2008从入门到精通(微软技术丛书)
作 者: (美)哈尔弗森 著,汤涌涛 译
出 版 社: 清华大学出版社
出版时间: 2008-6-1
除上述图书以外,关于Visual Basic和Access 开发的网络资源非常丰富,也非常详细,请大家多上网搜索相关资料。
审核批准意见
系主任(签字) 年 月 日
目 录
第一章 概述
1.1开发背景
1.2管理信息系统产生的背景
1.3系统功能要求的分析
第二章 开发环境及实现技术介绍
2.1开发环境
2.2开发工具简介
第三章 图书管理系统的设计和实现
3.1系统的设计
3.1.1概要设计
3.1.2详细设计
3.2系统的实现
3.2.1主界面的设计与实现
3.2.2图书管理模块的设计与实现
3.2.3读者管理模块的设计与实现
3.2.4图书借阅管理模块的实现
3.2.5系统管理模块的设计与实现
第四章 总结
第一章 概述
1.1开发背景
在图书管理系统用计算机管理图书是一种计算机应用技术的创新,在计算机还未普及之前图书管理都是由图书管理人员手工记帐的方式来操作的.现在一般的图书馆都是采用计算机作为工具的实用的计算机图书管理程序来帮助图书馆管理员进行更有效的图书管理。
1.2图书管理系统产生的背景
图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。
经过分析,我们使用 MICROSOFT公司的 VISUAL BASIC开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。
1.3 系统功能要求的分析
图书管理系统主要服务与图书管理人员,包含的功能模块主要有:
一. 图书管理:图书类别管理,图书信息管理
二. 读者管理:读者管理,读者信息管理.
三. 图书借阅管理:借书管理,还书管理.
四. 系统管理:添加管理员,修改密码,退出系统
第二章 开发环境及实现技术介绍
2.1开发环境
2.2 开发软件介绍
本系统所采用的编程语言为visual basic 6.0与 微软的 access作为操作数据库.
现分别对其简单介绍:
Visual Basic 6.0是Micrsoft公司出品的开发工具,Visual Basic是一种可视化的,面向对象的Windows开发语言,它具有易用,通用和开发效率高的特点。随着微软对它不断地改进以及计算机本身性能的提高,使得Visual Basic越来越适合一般的应用程序开发。正如Bill Gate所说,世界上绝大多数的Windows应用程序是用Visual Basic编写的。在众多的开发工具中,我们为什么要选择Visual Basic6.0呢?因为VB具有众多其它开发工具所没有的优点!具体介绍如下:
u 开发的高效
u 语言的高效
u 编译的高效
u 执行的高效
u 维护的高效
基于以上理由,我们毫不忧郁的选择了VB6.0做为我们的开发工具!!
主要的控件及其基本属性,事件简介
u 命令按钮类的控件:
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控件中要显示的图片。
u 命令按钮类的事件:
1) 单击事件――Click事件
(1) 触发与适用
此事件是在一个命令按钮对象上按下然后释放一个鼠标按钮时发生。命令按钮的Click事件仅对当单击鼠标时发生。
(2) 事件处理过程
按钮单击事件的处理过程为:
Private Sub object-Click(Index As Integer)
其中Object为引发该事件的对象名称。如果是命令按钮的控件是数组,则需要使用Index参数标识该控件。
2) 获得焦点――GotFocus事件
(1) 触发与适用
当命令按钮获得焦点产生该事件,获得焦点可以通过诸如Tab切换或单击对象之类的用户动作,或在代码中用SetFocus方法改变焦点来实现。
(2) 事件处理过程
命令按钮GotFoucs事件处理过程为:
Private Sub Object-GotFocus(Index As Integer)
3) LostFocus事件:当一个对象失去焦点时发生
4) KeyDown事件:当命令按钮具有焦点时按下一个键时发生
5) KeyUp事件:当命令按钮具有焦点时释放一个键时发生。
6) KeyPress事件:当用户按下或松开一个ANSI键时发生。
7) MouseDown事件:当在命令按钮上按下鼠标按钮时发生。
8) MouseMove事件:当命令按钮上移动鼠标时发生。
9) MouseUp事件:当在命令按钮上释放鼠标按钮时发生。
u 标签框类的控件类的控件:
1) Caption属性:在应用程序界面上加入说明。
2) Autosize属性:决定控件是否自动改变大小以显示其全部内容。
3) Backstyle属性:用以指示标签是否透明.
4) Bordstyle属性:用以设定控件是否有边框。
u 文本框类的控件:
1) Text属性:通过像text属性赋值的方法来改变该属性的值。
2) Maxlength属性:该属性设定在文本框控件中能够输入的最大字符数。
3) Multline属性:该属性设定text字符串中是否接受换行符。
4) Scrollbars属性:该属性决定是否为文本框加滚动条。
5) Passwordchar属性:该属性设定输入文本的特殊显示字符,在设计密码程序时非常有用。
6) Change事件属性:文本框的内容发生改变时,相应的控件之间发生相应的改变,具有即时性。
7) Keypress:事件由用户在文本框控件中按任意键触发。
8) Alignment属性:设定控件中的文本对其方式
9) Appearance属性:设定一个对象在运行时是否可以3D效果显示。
10) BackColor属性:设置返回背景色
11) BorderStyle属性:设置对象的边框样式
12) DataField属性:设定数据使用者将被绑定到的字段名
13) DataFormat属性:设定DataFormat对象,用于数据绑定
14) DataMember属性:从数据供应程序提供的几个数据成员中返回/设定一个特定的数据成员
15) DataSource属性:设定控件绑定的一个数据源
16) DragIcon属性:设定图标,它将在拖放操作中作为指针显示
17) DragMode模式:设定一个值,确定在拖放操作中所用方式
18) Enabled属性:设置/返回运行时TextBox是否相应用户事件
19) Font属性:设置/返回字体属性
20) ForeColor属性:设置/返回文本的前景色
21) Height属性:设置/返回TextBox的高度
22) IMEMode属性:设置/返回数值用来确定输入方法编辑器的状态
23) Index属性:设置/返回唯一的标识控件数组中该控件的编号
24) Left属性:设置/返回TextBox控件的水平位置
25) Locked属性:设置/返回TextBox中文本是否可编辑
26) LinkItem属性:设置/返回DDE与另一个应用程序会话时,传给接受端的数据
27) MaxLength属性:设置/返回一个值,指定在TextBox控件中能够输入的字符最大值
28) MouseIcon属性:设置/返回自定义鼠标的图标
29) Top属性:设置/返回TextBox控件的垂直位置
30) Tag属性:存储过程所需的附加数据
u 文本框类的事件:
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事件:在焦点转换到另一个控件之前发生,此时该控件的Causes Validation 属性值设置为True
u 单选按钮类的控件:
1) Caption属性:显示在控件上的文本,是单选按钮的标题。
2) Alignment属性:决定单选按钮的标题在控件上的位置。
3) Enable属性:该控件为灰色时为false,表示运行时不可用。
4) Index属性:属性值表示为单选按钮组成的控件中某个按钮的索引值。
5) Tabindex属性:建立控件时,vb自动为其分配一个tabindex值,利用tab键可以在控件之间切换焦点。
6) Value属性:反映控件状态的属性,返回true表示已选择了该按钮。
7) Appearance 属性:设置/返回一个对象在运行时是否以3D效果显示。
8) BackColor 属性:设置/返回背景色。
9) Container 属性:设置/返回Form上的控件属性。
10) DataField 属性:设置/返回数据使用者将被绑定到的字段名。
11) DataFormat 属性:设置/返回DataFormat对象,一个绑定对象将附加到它。
12) DisabledPicture 属性:设置/返回一个对图像的引用,该图片在控件无效时显示在控件中。
13) DownPicture 属性:设置/返回一个对图片的引用,该图片在控件单击下处于压下状态时显示。
14) DragMode 属性:设置/返回一个值,确定在拖放操作中所用的方式。
15) Font 属性:设置/返回字体属性。
16) FontBold 属性:设置/返回字体粗体样式。
17) FontItalic 属性:设置/返回字体斜体样式。
18) FontStrikethru 属性:设置/返回字体删除线样式。
19) FontUnderLine 属性:设置/返回字体下划线样式。
20) FontName 属性:设置/返回控件中显示文本所用的字体大小。
21) FontSize 属性:设置/返回控件中显示文本所用的字体大小
22) Height 属性:设置/返回控件的高度。
23) MaskColor 属性:设置/返回一个在控件的图片中作为掩码的颜色。
24) MousePointer 属性:设置/返回一个值,该值指示在运行时当鼠标移动到对象上时显示的指针类型。
u 单选按钮类的常用事件:
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事件:在控件上释放鼠标时发生。
u 复选按钮类的控件:
1) Caption属性:缺省为check1…。
2) Index属性:该属性值为复选框控件数组的下标.
3) Value属性:value为0表空白,为1表勾号,为2表示灰色勾号.
4) Container属性:Form控件上的容器。
5) DataChangeed属性:设置/返回一个值,指出被绑定的控件中的数据已经被某进程修改。
6) DataField属性:设置或返回数据使用者将被绑定到的字段名。
7) DataFormat 属性:设置或返回DataFormat对象,用于数据绑定。
8) Datasource属性:设置或返回控件绑定的一个数据源。
9) DisabledPicture属性:设置或返回一个对图片的引用,该图片在控件无效时显示在控件中。
10) DownPicture 属性:设置或返回一个对图片的引用,该图片在控件被单击处于压下状态时显示。
11) DragIcon属性:设置或返回图标,它将在拖放操作中做为指针显示。
12) DragMode属性:设置返回一个值,确定在拖放操作中所用方式。
13) Font属性:设置或返回字体的属性。
14) Name属性:设置或返回控件的标识名。
15) Value属性:设置或返回控件的状态。
u 复选按钮类的控件的基本事件:
1) Click事件:鼠标单击控件时发生。
2) DragDrop事件:在一个完整的拖放动作完成或使用Drag方法,并将其Action参数设置为2时发生。
3) DragOver事件:在拖放操作正在进行时发生。
4) GotFocus事件:在对象获的焦点时发生。,
5) OLECompleteDrag事件:当源部件被放到目标时发生,并通知源部件拖放操作被执行或取消。
6) OLEDragDrag事件:当源部件决定放操作能发生,却源部件被放到目标部件时,此事件发生。
u 框架类的控件:
1) List属性:列表框控件的表项是使用数组的方式保存,数组的每一个元素存储列表控件的一个表项
1) Listcount属性:控件列表部分项目的个数。
2) Mutselect属性:可以设置列表框为单选或允许多选属性.
3) Selectd属性:标示一个数组,数组各元素为:
4) Selected(0),selected(1)…
u 滚动条类的控件:
1) Value属性:滚动条上滑块所在位置由value值所决定。
2) Max和min属性:对value值的最大,最小进行限制。
3) Largechange属性:用户点击滚动条与键头之间的区域时,value的改变量。
4) OnClick事件:用来添加按钮的单击事件所执行的程序代码。
u 定时器类类的控件:
1) Interval属性:表示定时的时间间隔,以毫秒为单位。
2) Enable属性:为true时(缺省值),激活定时器开始计时;为false时处于休眠状态.
数据库连接方式选择
Visual basic6.0连接数据库的主要方式以下几种方式:一是:用data控件进行数据库链接 ,二是利用adodc(ADO Data Control)进行数据库链接 。三是: 利用DataEnvironment进行数据库链接.四是利用ADO(ActiveX Data Objects)进行编程
:现在我们来大致对这几种技术应用介绍:
一、 用data控件进行数据库链接.
第一步:给窗体添加一个Data控件。
第二步:用Access建立一个名为Pad的数据库,在库中建立一个表Myset,给表添加四个字段:backcolor(数据),forecolor(文本),fontname(文本),fontsize(文本)。注意:请将库文件存入程序所在目录。
如果你的机器没安装有Access,可通过VB建库。
二、 利用adodc(ADO Data Control)进行数据库链接:
使用adodata控件访问数据库可以完全不用编写代码,只需要通过简单的设置和操作其属性就可以实现与数据库的连接,通过绑定数据感知控件,就能提供一个访问数据库的界面,用来实现对数据库的浏览,贴加,删除,修改等操作.
三、 利用DAO对数据库进行操纵:
在visual basic 中提供了两种与jet数据引擎接口的方法:data控件与数据访问对象(DAO)DAO是database object的英文缩写,要访问数据库一方面数据库要提供访问接口,另一方面要在编程环境中有对数据库的支持.
DAO模型是设计关系数据库系统结构的对象类的集合.他们提供了管理关系型数据库系统所需要的全部操作属性和方法,这其中包括建立数据库,定义表,字段和建立表间关系,定位和查询数据库等.
关系数据库介绍:
关系数据库是目前各类数据库中最重要、最流行的数据库,他应用数学方法来处理数据库数据,是目前使用最广泛的数据库系统。20世纪70年代以后开发的数据库管理系统产品几乎都是基于关系的。在数据库发展的历史上,最重要的成就就是关系模型。
关系数据库系统与非关系数据库系统的区别是:关系系统只有“表“这一种数据结构;而非关系数据库系统还有其他数据结构,对这些数据结构有其他的操作。
结构化查询语言SQL(Structured Query Language)是一种介于关系代数与关系演算之间的语言,其功能包括查询、操纵、定义和控制四个方面,是一个通用的、功能极强的关系数据库语言。目前已成为关系数据库的标准语言
Microsoft Access介绍:
使用 Microsoft Access,可以在单一的数据库文件中管理所有的信息。在这个文件中,用户可以将自己的数据分别保存在各自独立的存储空间中,这些空间称作表;可以使用联机窗体来查看、添加及更新表中的数据;使用查询来查找并检索所要的数据;也可以使用报表以特定的版面布置来分析及打印数据。
如果要保存数据,请为每一种类型的信息创建一个表。如果要从查询、窗体或报表中的多个表中将数据合并在一起,就要定义各个表之间的关系。
如果要搜索并检索符合指定条件的数据,包括来自多个表中的数据,就要创建查询。查询的同时也可以更新或删除多条记录,并对数据执行内嵌或自定义的计算。
如果要简单地直接在某个表中查看、输入及更改数据,请创建一个窗体。在打开一个窗体时,Microsoft Access 将从一个或多个表中检索数据,并使用用户在“窗体向导”选择的版面布局或所创建的版面布局,将窗体显示在屏幕上。
如果要分析数据或将数据以特定的方式打印出来,请创建一个报表。例如,可以打印一份将数据分组并计算数据总和的报表,也可以打印另一份带有各种数据格式的打印邮件标签的报表。
第三章 图书管理系统的设计与实现
3.1 系统的设计
3.1.1系统的概要设计
该系统考虑将整个系统分解成如下模块:
主界面
图书管理
图书信息管理
读者类别管理
读者信息管理
图书借阅管理
借书管理
还书管理
系统管理
登录
图书类别管理
读者管理
3.1.2 系统的详细设计
1.读者类别表
2.读者信息表:
3. 借阅信息表:
4. 书籍信息表:
5.图书类别表:
6.系统管理表:
3.2 系统的设计与实现
3.2.1 系统的主界面的设计与实现
主界面代码:
Private Sub add_admin_Click()
frmadduser.Show
End Sub
Private Sub add_back_book_Click()
frmbackbookinfo.Show
End Sub
Private Sub add_book_info_Click()
frmaddbookinfo.Show
End Sub
Private Sub add_book_style_Click()
frmaddbookstyle.Show
End Sub
Private Sub add_lend_book_Click()
frmfindbook.Show
End Sub
Private Sub add_reader_info_Click()
frmaddreaderinfo.Show
End Sub
Private Sub add_reader_style_Click()
frmaddreaderstyle.Show
End Sub
Private Sub change_pwd_Click()
frmchangepwd.Show
End Sub
Private Sub del_book_info_Click()
frmmodifybookinfo.Show
End Sub
Private Sub del_book_style_Click()
frmmodifybookstyle.Show
End Sub
Private Sub del_reader_info_Click()
frmreaderinfo.Show
End Sub
Private Sub del_reader_style_Click()
frmmodifyreaderstyle.Show
End Sub
Private Sub exit_sys_Click()
End
End Sub
Private Sub find_book_info_Click()
frmfindbook.Show
End Sub
Private Sub find_lend_book_Click()
frmfindborrowinfo.Show
End Sub
Private Sub find_reader_info_Click()
frmfindreader.Show
End Sub
Private Sub modify_book_info_Click()
frmmodifybookinfo.Show
End Sub
Private Sub modify_book_style_Click()
frmmodifybookstyle.Show
End Sub
Private Sub modify_reader_info_Click()
frmreaderinfo.Show
End Sub
Private Sub modify_reader_style_Click()
frmmodifyreaderstyle.Show
End Sub
3.2.2 图书管理模块的设计与实现
图书管理模块主要由:图书类别管理,图书信息管理.
图书类别管理又分别由以下几个界面构成:
1. 添加图书类别
添加图书类别代码:
Private Sub Command1_Click()
Dim rs_bookstyle As New ADODB.Recordset
Dim sql As String
If Trim(Text1.Text) = "" Then
MsgBox "图书种类不能为空", vbOKOnly + vbExclamation, ""
Text1.SetFocus
Exit Sub
End If
If Trim(Text2.Text) = "" Then
MsgBox "种类编号不能为空", vbOKOnly + vbExclamation, ""
Text2.SetFocus
Exit Sub
End If
sql = "select * from 图书类别 where 类别名称='" & Text1.Text & "'"
rs_bookstyle.Open sql, conn, adOpenKeyset, adLockPessimistic
If rs_bookstyle.EOF Then
rs_bookstyle.AddNew
rs_bookstyle.Fields(0) = Trim(Text1.Text)
rs_bookstyle.Fields(1) = Trim(Text2.Text)
rs_bookstyle.Update
MsgBox "添加图书类别成功!", vbOKOnly, ""
rs_bookstyle.Close
Else
MsgBox "读者类别重复!", vbOKOnly + vbExclamation, ""
Text1.SetFocus
Text1.Text = ""
rs_bookstyle.Close
Exit Sub
End If
End Sub
2. 修改图书类别:
修改图书类别代码:
Private Sub Form_Load()
Dim sql As String
On Error GoTo loaderror
sql = "select * from 图书类别"
rs_reader.CursorLocation = adUseClient
rs_reader.Open sql, conn, adOpenKeyset, adLockPessimistic '打开数据库
cmdupdate.Enabled = False
'设定datagrid控件属性
DataGrid1.AllowAddNew = False '不可增加
DataGrid1.AllowDelete = False '不可删除
DataGrid1.AllowUpdate = False
If userpow = "guest" Then '权限相关
Frame2.Enabled = False
End If
Set DataGrid1.DataSource = rs_reader
Exit Sub
loaderror:
MsgBox Err.Description
End Sub
3.2.3 读者管理模块的设计与实现
1.添加读者类别界面:
Private Sub Command1_Click()
Dim sql As String
If Trim(Text1.Text) = "" Then
MsgBox "读者种类不能为空", vbOKOnly + vbExclamation, ""
Text1.SetFocus
Exit Sub
End If
If Trim(Text2.Text) = "" Then
MsgBox "借书数量不能为空", vbOKOnly + vbExclamation, ""
Text2.SetFocus
Exit Sub
End If
If Trim(Text3.Text) = "" Then
MsgBox "借书期限不能为
展开阅读全文