SCI期刊 | 网站地图 周一至周日 8:00-22:30
你的位置:首页 >  » 正文

关于中小型图书馆管理系统的分析

2021-4-13 |

一、系统可行性分析与总体设计

通过对一些典型的图书馆管理系统的考察,从管理员和读者的视角出发,以操作方面界面美观简洁的原则,要求本系统具有以下特点:

(1)具有友好的显示界面。

(2)处理效率快,操作简便、实用,便于后期维护。

(3)支持数据备份和还原,保护系统数据,减少不必要的损失。

(4)数据计算系统自动完成,尽量减少人工干预。

(5)本信息查询时,可根据查询条件动态显示查询结果。根据以上对图书馆管理系统的需求分析,一个标准的图书馆管理系统应该包含信息设置、库存管理、借阅管理、报表打印、系统维护等功能,每一个功能模块都包含了一系列的子模块。信息设置功能实现对图书类别设置、读者信息设置、订购新书等的维护。它提供增加、修改、删除和查询功能。2图书馆管理系统具体实现

二、主窗体的实现过程

主窗体用于调用程序的所有功能。用户输入正常的用户名和密码就可以进入图书馆管理系统的主窗体中,该主窗体主要由菜单栏、带图片的工具栏、左侧的树状导航菜单、右侧的功能列表以及底部的状态栏组成。用户单击左侧树状导航菜单中的节点,可以在右侧的窗格中显示出该主菜单下的子菜单。例如,选择“借阅管理”选项,将在右侧窗格中显示该菜单下的所有子菜单。

1、主窗体的设计

(1)在工程中新建一个窗体,命名为frmmain,设置Caption属性为“图书馆管理系统”,Boderstyle属性为1-FixedSingle,MinButton属性为True。

(2)利用菜单编辑器设置图书馆管理系统的主菜单。选择“工具”/“菜单编辑器”命令,打开菜单编辑器。

(3)在窗体上添加一个TreeView控件、一个ListView控件和一个Im-ageList控件。

(4)在窗体上添加两个ADO控件,使用其默认名,分别用于连接Table_zcd表和Table_zcd_zcd表。

(5)在窗体上添加一个StatusBar控件。用鼠标右键单击StatusBar控件,在弹出的快捷菜单中选择“属性”命令,在弹出的“属性页”对话框中选择“窗格”选项卡,添加4个窗格,分别用于显示欢迎信息、操作员、日期时间和程序网址。

(6)在窗体上添加一个Timer控件,使用默认名,设置Interval属性为60,用于状态栏显示日期和时间。(7)在窗体上添加若干Label控件,用于执行相应操作。

2、主窗体的代码设计

(1)给菜单添加代码下面是“信息设置”/“图书类别设置”菜单中的代码:PrivateSubmnufen_Click()frmbooksort.Show1‘调用图书类别设置窗体EndSub

(2)鼠标移动的效果在菜单栏下面的位置是利用图片和Label1控件实现的类似工具栏功能的按钮。在背景图片上绘制出需要的功能,利用Label控件显示该图片的功能名称。这里显示名称的Label控件是一个命名为Lbl_info的控件数组,在每一个Lbl_info控件和背景图片上再放置一个Label控件,用于触发鼠标移动事件,将其设置为名为Lbl_Pic的控件数组。当鼠标在Lbl_Pic控件上移动时,改变对应的Lbl_info控件中文字的颜色,将其设置为红色;当鼠标在窗体上移动时,将Lbl_info控件中文字的颜色设置为黑色。实现的关键代码如下:’鼠标在Lbl_Pic控件上移动PrivateSubLbl_Pic_MouseMove(IndexAsInteger,ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSin-gle)Lbl_info(Index).ForeColor=RGB(255,0,0)‘设置Lbl_info的文字为红色EndSub’鼠标在窗体上移动PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSingle)DimiAsInteger‘定义整形变量Fori=0ToLbl_info.Count-1Lbl_info(i).ForeColor=RGB(0,0,0)‘设置所有Lbl_info的文字为黑色NextiEndSub

(3)添加工具栏命令当用户单击Lbl_Pic控件时,即可调用对应的功能,这里利用数组Index属性来判断单击的是哪一个控件,并执行对应的功能。关键代码如下:PrivateSubLbl_Pic_Click(IndexAsInteger)SelectCaseIndex‘根据index的不同调用不同的操作Case0:frmaddnew.Show1‘调用图书登记窗体Case1:frmdzxxgl.Show1‘调用读者管理窗体Case2:frmdzjsgl.Show1‘调用借书管理窗体Case3:frmdzhsgl.Show1‘调用还书管理窗体Case4:frmcqtx.Show1‘调用超时提醒窗体Case5:frm_lb_cx.Show1‘调用检索图书窗体Case6:End‘关闭程序EndSelectEndSub

3、读者信息管理模块的实现过程

(1)读者信息管理模块的设计

读者信息管理模块的主要功能是对图书馆的读者信息进行管理,可以对该信息进行增、删、改、查等操作。在主菜单中选“信息设置”/“读者信息设置”命令,即可进入读者信息管理窗体中,在该窗体中选择“添加读者”选项卡,单击“增加”按钮,开始添加读者信息。信息添加完成后,单击“保存”按钮,开始添加读者信息。信息添加完成后,单击“保存”按钮,即可将输入的读者信息保存到数据库中。

(2)读者信息管理模块的代码设计

①自动生成读者编号。运行程序,在“添加读者”选项卡中单击“增加”按钮,即可在“读者编号”文本框中自动生成读者编号,这里主要利用ADO执行SQL语句,查询数据库中的读者编号,将最后一个读者的编号加1,生成新的读者编号,并将其填写到“读者编号”文本框中,同时将焦点移动到“读者姓名”文本框中。

②保存读者信息。将读者信息都输入完后,单击“保存”按钮,即可将读者信息保存到数据库中。这里主要是用数据库连接对象来执行SQL语句,将数据信息保存到数据库中。

③修改读者信息。如果读者的基本信息发生改变,可以通过“修改信息”选项卡来修改读者信息,并将其保存到数据库中。运行程序,选择“修改信息”选项卡,在“读者编号”文本框中输入要修改的读者编号,按Enter键,如果存在该读者信息,则将读者的基本信息显示在文本框中;否则,弹出提示信息,清空“读者编号”文本框。这里主要是利用数据集对象执行SQL语句来查询数据库中是否存在该记录。

4、读者借书管理模块的实现过程

(1)读者借书管理模块的设计读者借书管理模块的主要功能是将读者的借书信息保存到数据库中,并可以对读者的借书信息进行删除操作。用户在主窗体中选择“借阅管理”/“读者借书管理”命令,即可进入到读者借书管理模块中。在该窗体中,用户输入“读者编号”,按Enter键,即可显示读者的姓名;在“条码号”文本框中输入读者要借图书的条码,按Enter键,即可显示所借图书的信息;输入借书数量,单击借书数量,单击“借出当前图书”按钮,即可将该图书借出。

(2)读者借书管理模块的代码设计

①显示读者信息。用户在“读者编号”文本框中输入读者的编号信息,按Enter键,系统将自动在读者信息表(dzxxtb)中查找具有该读者编号的读者信息。如果具有该信息,则将读者姓名显示在“读者姓名”文本框中,并将光标设置在“条码号”文本框中;如果没有相应的数据信息,则提示相应的信息并清空。这里主要利用ADO控件来实现数据查询。

②显示借阅信息。“条码号”文本框用于输入图书的条码,这个条码一般是利用条形码扫描器获得的。在“条码号”文本框中输入图书的条码,当该文本框失去焦点以后,就开始在图书信息表(books)中查询具有该条码的图书信息,如果查询到信息,则将相应的图书信息显示在对应的文本框中;如果没有相应的图书信息,则提示相应的信息,并清空文本框。

③借出图书。在“借出数量”文本框中输入借书数量,然后单击“借出当前图书”按钮,即可借出图书。此时系统会首先查看借书信息内容添加是否完全,接着查看该读者的借出本数是否超出限制,如果超出限制,则提示信息;否则,将该信息写入读者借书表(dzjstb),并将图书信息表(books)中的“复本数”和“借书数量”两个字段的数据进行修改,执行完毕后,弹出提示信息,并刷新图书信息表中的内容。

5、图书丢失管理模块的实现过程

图书丢失管理模块的主要功能是记录图书丢失信息。用户在主窗体中选择“借阅管理”/“图书丢失管理”命令,即可进入到图书丢失管理模块中。在该模块中输入读者的编号和丢失图书的条码号,按Enter键即可显示该读者借阅该书的信息,单击“丢失”按钮显示“丢失”,单击“确定”按钮,将丢失信息写入数据库。在该模块中还可以对丢失图书的信息进行查询,输入查询条件,例如,查询读者编号是100003的图书丢失信息,单击“查询”按钮,即可将编号是100003的读者的图书丢失信息显示在表格中。最后,使用黑盒测试方法,对系统需求分析阶段与概要设计阶段提出的功能要求进行逐一测试。

作者:田青 单位:长春师范大学图书馆

Top