图书管理系统毕业论文

图书馆管理系统目录

0 前言

1系统设计

1.1系统目标设计

1.2开发设计思想

1.3开发和运行环境选择

1.4系统功能分析

1.5系统功能模块设计

2数据库设计

2.1数据库需求分析

2.2数据库逻辑结构设计

3数据库结构的实现

4各个功能模块的创建

6:41系统主界面的设计

4.2系统用户管理模块的设计

614.3读者种类管理模块的设计

4.4读者信息管理模块的设计

6:4书籍种类信息模块的设计

4.6书籍信息管理模块的设计

4.7借阅信息管理模块的设计

6:48帮助文档的设计

5开发中的难点和解决技巧

5.1在Visual FoxPro 0中添加和修改删除记录

5.2在Visual FoxPro 0中编程的技巧

6系统的编译和发行

1设置主文件

2构造主文件

3在.app和.exe文件中包含和排除文件

7运行结果

8总结

9参考文献

 

 

图书馆管理系统

前言:图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。

本章我们将以一个图书馆管理信息系统为例子,来讲述如何建立一个图书馆管理信息系统。因为Visual FoxPro6.0具有强大的数据库管理功能,我们选定Visual FoxPro6.0实现图书馆管理信息系统中的各项功能。

1系统设计

1.1系统目标设计

通过一个图书馆管理信息系统,使图书馆的信息管理工作系统化、规范化、自动化,从而达到提高企业人事管理效率的目的。

1.2开发设计思想

本系统的开发设计思想:

.系统应符合图书馆信息管理的规定,满足图书馆日常管理的工作需要,并达到操作过程中的直观、方便、实用、安全等要求;

.系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护;

.系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。

1.3开发和运行环境选择

开发工具:Visual FoxPro6.0。

运行环境:Windows 9x、Windows NT或Windows 2000。

1.4系统功能分析

.有关读者种类标准的制定、种类信息的输入,包括种类编号、种类名称、借书数量、借书期限、有效期限、备注等。

.读者种类信息的修改、查询等。

.读者基本信息的输入,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注等。

.读者基本信息的查询、修改,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注等等。

.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称、关键词、备注信息等。

.书籍类别信息的查询、修改,包括类别编号、类别名称、关键词、备注信息等。

.书籍信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页书、关键词、登记日期、备注信息等。

.书籍信息的查询、修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页书、关键词、登记日期、备注信息等。

.借书信息的输入,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、备注信息等。

.借书信息的查询、修改,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、备注信息等。

.还书信息的输入,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

.还书信息的查询和修改,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

1.5系统功能模块设计

在系统功能分析的基础上,考虑Visual FoxPro6.0程序编制的特点,得到如图6-1所示的系统功能模块图。

图6-1系统功能模块图

2数据库设计

设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:

.数据库需要分析。

.数据库逻辑结构设计。

2.1数据库需求分析

用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。

仔细分析调查有关图书馆管理信息需求的基础上,将得到如图6-2所示的本系统所处理的数据流程。

图6-2图书馆管理信息系统数据流程图

针对一般图书馆管理信息系统的需求,通过对图书馆管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:

.读者种类信息,包括的数据项有:种类编号、种类名称、借书数量、借书期限、有效期限、备注等。

.读者信息,包括的数据项有:读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注等。

.书籍类别信息,包括的数据项有:类别编号、类别名称、关键词、备注信息等。

.书籍信息,包括的数据项有:书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、书籍页数、关键词、登记日期、备注信息等。

.借阅信息,包括的数据项有:借阅信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期、备注信息等。

有了上面的数据结构、数据项和数据流程,我们就能进行下面的数据库设计。

2.2数据库逻辑结构设计

现在需要将上面的数据库概念结构转化为Visual FoxPro数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。

图书馆管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格表示在数据库中的一个表。

表6-1为读者基本信息表。

3数据库结构的实现

首先建立建立一个“图书馆管理信息系统”的项目,以便管理本系统中所有数据,打开的“图书馆信息管理系统”项目后,用鼠标选中数据库,单击右侧的“新建” 按钮,在弹出的对话框中将该数据库文件存储为c:/图书馆管理信息系绷图书馆管理.dbca.

在弹出的如图6-4所示的数据库设计器中单击鼠标右键,选择“新建表”,为数据库添加数据表(表的内容见表6-1至表6-5)。下面以表6-1为例来介绍表的建立过程。

图6-4新建数据表

选择“新建表”,在弹出的对话框中将表存储为c:/图书馆管理信息系统、读者信息种

类.曲f.在弹出的如图6-5所示的表设计器中填写表的内容。

图6-5设计表的内容

请读者将其与表6-l比较,可以发现表的字段名就是列名。由于在以后编写的程序中对数据库数据的操作通常是引用表的字段,因此读者在设计字段名时要挑选容易理解的名称。

字段设置完成后,单击“确定”按钮后为表输入数据,如不想现在输入,可以先“取消”, 以后再输入。具体方法如下:

(1)如图6-6所示,选中要输入数据的表,单击“浏览”按钮。

Visual FoxPro6.0也提供了菜单的实现方法,以建立一个类似于Windows风格的操作界面。下面就利用菜单选项制作如图

6-8所示的界面。

图6-8系统主界面

打开“图书馆信息管理系统”项目后,在项目管理器中展开“其他”文件夹,如图6-9所示。用鼠标选中菜单,单击右侧的“新建”按钮,在弹出的对话框中将该数据库文件存储为。C:\图书馆管理信息系绑系统菜单。

图6-9创建系统菜单

然后单击右侧的“插入”按钮,在左侧填入菜单第一项的名称,将“结果”设为“子菜单”,再单击“创建”按钮,如图6-10所示。

图6-6为表输入数据

(2)弹出无数据的表,在Visual FoxPro的主窗口中选择“表”,选择“追加新记录”  后,就可以在表中输入数据了,如图6-7所示。不过这种方法只能一次输入一条记录,要输入第二条记录时,需再次选择追加新记录。如果有一个已有数据的表,可以使用“使用追加记录”将这个有数据的表追加到当前表中,不过执行该操作要求这两个表的结构完全相同。

图6-7追加新记录

4各个功能模块的创建

下面的操作均在图书馆管理信息系统的项目管理器中进行,以下所有表单的“桌面”属性全部设为“.T.一真”。

4.1系统主界面的设计

这一模块的主要功能是作为系统主界面为进入本系统不同功能界面选择提供一个接口, 像上面介绍的一样再次添加菜单项,名称为“修改密码”,结果设为“过程”,再单击“创 建”按钮。

*将程序的资源路径设为当前程序所在文件夹

screen.windowstate=2

screen.width=625

screen.height=550

*设定原始窗口大小

。-screen. autocenter=.T.

*将窗口定义在屏幕中间显示

push menu rnsysmenu

*保存原来的系统菜单

do系统菜单.mpr

*执行系统菜单

do form用户登录

*运行登录界面

on shutdown quit

*这行代码的作用是为窗口提供关闭功能

read events

*等待事件

pop menu msysmenu

*还原系统菜单

注:(1)如果不添加on shutdown quit这段代码,则当关闭有可能出现“Can not Exit from

FoxPro”。(2)read events表示现在系统初始化完毕,等待下一个事件的发生。Visual FoxPro6.0

以事件为驱动,最后以clear events结束。(3)在“系统菜单”的二级菜单“退出”里,创建

代码“clear event".

保存菜单。保存“主程序.prg”后,继续在“代码”文件夹下面,鼠标选中“主程序.prg”,

右键单击,在出现的菜单中选择“设置为主文件”,如图6-14所示。

图6-14设置主程序

这样就把“主程序.Prg”设置成为主文件,由它调用其他的功能模块。

4.2系统用户管理模块的设计

系统用户管理模块主要实现:

.用户登录。

.添加用户。

.修改用户密码。

这个功能模块和第1章的一样,这里就不再详细介绍了。需要值得注意的是,当完成了表单和程序的设计后,应当在其功能菜单内添加相应的过程,使得菜单能正确调用表单。图6-15显示了用户登录的界面运行结果,该模块的其他功能希望读者自行完成。

图6-15用户登录界面

4.3读者种类管理模块的设计

图书馆需要管理不同种类的读者,并且不同读者享受的服务不同。读者种类管理模块主要实现如下功能:

.添加读者种类。

.修改读者种类。

.删除读者种类。

在前面的几章的例子中已经详细介绍了关于如何定制具有标准查询并修改功能的表单, 其实Visual FoxPro6.0本身也具有生成具有上述功能表单的功能。下面就介绍如何通过表单向导完成读者种类管理表单的设计,设计的最终结果将如图6-16所示。

图6-16读者种类信息表

首先在项目管理器的文档视图下单击“新建”按钮,然后选择“表单向导”. 在接下来的向导中,“数据库和表”选择“图书馆管理”以及“读者种类信息表”,这是 前面定义好的数据库和表。由于设备入库需要显示所有的字段,因此我们将可用字段全部移 至选定字段。

在表单样式中,选择“阴影式”以及“文本按钮”。左上角的窗口提供了表单样式的预览功能,图片按钮和文本按钮的区别在于显示的时候是以图片来表达功能还是用文字来表示, 实现功能的函数没有区别。而不用的表单样式的区别在于选用不用风格的文本框和标签。选择“上一步”按钮可以跳回上一步对表单中所要显示的字段进行修改。设置好表单样式后,单击“下一步”按钮。单击“下一步”后,向导进行到步骤3一排序次序。选择“种类编号”为 索引,并选择升序排列。最后预览表单,核对每项的设置,完成表单向导,如图6-23所示。值得注意的是,在结束表单向导前,可选择“保存表单以备将来使用”,“保存并运行表单”,或者“保存表单并用表单设计器修改表单”。由于Visual FoxPro6.0向导生成的表单只具有普遍性,对于当前设计的读者种类管理信息表还需要一定的改变,所以我们选择“保存表单并用表设计器修改表单”,单击“完成”按钮。

图6-24根据表单向导生成的表单

需要提醒读者,表单向导生成的表单中的按钮都是继承自标准的按钮类,并集合成一个ButtonSet类型。如果要修改内部按钮的属性,可以通过表单属性的下拉列表选中所用的按钮,进而修改其属性。

以上就结束了读者种类管理表单的设计。可以看见Visual FoxPro6.0提供的强大的向导功能。读者可以通过“工具”菜单下的“向导”选项,选择不同的向导。这里就不一一介绍各个向导的步骤了,同时也可以参阅Visual FoxPro6.0自带的帮助文件。

6.4.4读者信息管理模块的设计

读者信息管理模块主要实现如下功能:

.添加读者信息。

.修改读者信息。

.删除读者信息。

.查询读者信息。

由于读者信息管理模块设计也同样采用表单向导生成,这里就不再叙述详细步骤了。最后运行的界面如图6一27所示。

6:45书籍种类信息模块的设计

书籍类别管理模块主要实现如下功能:

.添加书籍类别。

.修改书籍类别。

.删除订房信息。

由于读者信息管理模块设计也同样采用表单向导生成,这里就不再叙述详细步骤了。

6.4.6书籍信息管理模块的设计

书籍信息管理模块主要实现如下功能:

.添加书籍信息。

.修改书籍信息。

.删除书籍信息。

.查询书籍信息。

由于读者信息管理模块设计也同样采用表单向导生成,这里就不再叙述详细步骤了。

6.4.7借阅信息管理模块的设计

借书信息管理模块主要实现如下功能:

.添加借书信息。

.修改借书信息。

.删除借书信息。

.查询借书信息。

还书信息管理模块主要实现如下功能:

.添加还书信息。

浏览/修改借书信.息模块设计

该表单主要完成浏览所有借阅信息,同时也允许管理员修改借阅信息的功能,所以我们利用一个表格控件来实现,并将其ReadOnly属性设为“.T.一真”,表单界面如图6-33所示。

图6-33浏览借阅信息表运行结果

新建空表单,命名为“浏览借书信息’,,为其添加数据环境借阅信息表后保存。根据表6-7在表单中加入相应控件并更改其属性。

保存修改后的表单就完成了对表单的设计工作。

下面为该表单Load事件的代码:

pack

*Visual FoxPro6.0在删除数据库中的记录时往往是先做上己删除的标签。

*而如果需要彻底删除记录,则还需要执行一条Pack命令。本按钮就是执行这个功能·

*         重新运行借阅信息表,达到刷新的效果。

3.添加还书信息模块设计

主要功能为添加还书信息,由于借阅编号即是借阅信息的主键,因此通过选择借阅编号就可以得到其他借阅信息,按照需求设计添加还书信息表单如图6-35所示:

新建空表单,命名为“添加还书信息”,为其添加数据环境借阅信息表后保存。根据表6-8在表单中加入相应控件并更改其属性。

图6-35添加还书信息的界面

表“添加还书信息表”控件的主要属性

下面为表单填写事件代码:

在Combol的Init事件中添加代码,以显示所袒借图书。

this.clear

local aCountries,cCountry

dimension aCountries[1]-

select distinct借阅编号from借阅信息表into array aCountries

for each n i.cCountry in aCountries

if !empty(m.cCountry)

this.additem(m.cCountry)一

endif

endfor

在Combo l的InteractiveChange事件中添加代码,以显示图书相关信息:

thisform.读者编号.caption=result(1)

thisform.书籍名称.caption=result(2)

thisform.书籍编号.caption=result(3)

thisform.读者姓名.Caption--result(4)

thisform.出借日期.caption=dtoc(result(5))

thisform.还书日期.caption=dtoc(result(6))

thisform.备注信息.Caption--result(7)

在Connnandl的Click事件中添加代码,完成还书功能:

delete from借阅信息表where借阅编号=thisform.Combo l.value

pack

thisformselease

在Command2的Click事件中添加代码,完成取消功能:

thisformselease

现在就完成了对还书信早的添加功能如6-36所示。

.图6-36选择借阅编号后的界面

通过借阅信息管理模块的设计,可以看到数据流都是在借阅信息表中完成,无论是添加借书信息、修改删除借书信息以及添加还书信息管理都是对借阅信息表的操作。这样可以达到对数据库进行完整性约束的目的。而所有的图书和作者又都是通过读者信息表和书籍信息表得到的,使得数据库中各个表之间完成了关联,达到了数据库的一致性。哈华

读者可以通过以上的学习添加对还书日期的限制,如果当前时间超过了还书时间,则应当显示图书过期信息。因此就应该在Commandl中加入判断条件的代码。这里就留给读者自行完成,最后在系统菜单中添加借阅信息管理的功能。

4.8帮助文档的设计.

图6-37帮助界面

为帮助表单添加Click事件代码:

thisform.release

5开发中的难点和解决技巧

5.1在Visual FoxPro6.0中添加和修改删除记录

在建立数据表时,所输入的数据记录不会是永久不变的,随着时间的推移,新的数据记录需要添加,不需要的记录应当删除。

为了在一张表中加入数据记录,可以按照以下的步骤:

(1)从“显示”下拉菜单中选择“追加方式”命令。在“浏览窗口”中的最后一行记录后将增加一新记录,但各字段中的值都为“空”值。

(2)在“浏览窗口”中输入新的记录。

操作时,可以如同前面建立表后输入数据记录那样,将新的数据记录附加在此表后,如果需要,还可同时在各字段中分别输入新的值。

注:上面的操作发生在“浏览“方式下的“浏览窗口”中。此时只能追加一行数据记录。

若要追加一行以上的记录,可以在追加一行数据记录后,从“显示”下拉菜单中选择“编辑”命令,进入“编辑”方式后进行操作。或者在每编辑完一行后,按“Ctrl+Y”继续添加记录。

以上就完成了对记录编辑和添加的操作,接下来介绍如何删除表中的记录。对于己经存在于表中的记录,可以在任何一个时候移出并且删除它们,但删除任何一行记录都需要分两步进行处理:

(1)单击将要删除的记录。

这一步操作仅对所要删除的记录行作上一个标记。单击处是位于该行记录左端的“标记 框”,把它填充为黑色即可,这时,该记录还不会被删除,仅是为删除建立了一个标记而已。

可以将多行记录都做上此标记,然后通过下一步操作将所有做标记的记录删除。若要取消删除标记,单击它即可。

(2)从“表”下拉菜单中选择“彻底删除”命令,并在“确认”对话框中单击“是”按钮。

若真的要删除记录,就可以执行“彻底删除”命令。此命令将删除所有在“浏览窗口”中作上删除标记的记录,并重新构造表中的记录。

需要注意:这种删除是不可恢复的,所以要慎重。假如误删除了某些记录,只能重新录入。

5.2在Visual FOxPro 6.0中编程的技巧

1.复制

在一个软件中会有许多代码是重复,我们可以不用重复地录入,而使用菜单中的“复制” “粘贴”等命令来复制重复的内容。

与此同时,表单中的控件也是能复制的,而且可以一次复制多个控件。比如在制做图书馆管理信息的借书表单时,设计好第一个(编号的)标签和文本框,接着做姓名的标签和文本框时,就可以采用复制的办法。

用鼠标同时选择编号的标签和文本框,方法是用鼠标画一框将以上两个控件框住,框住 每个控件的一部分也可以,这样我们可以看到每个控件四周都有6个黑点,表示它们都被选择了。然后与复制文字一样,调用菜单上的“复制”命令或工具栏上相应按钮,然后再用鼠标按“粘贴”,就会出现两个同样的控件,用鼠标把它们移到适当的位置(可以一起移),再将caption、controls~e以及大小等属性做相应改动即可。

注意:控件的n~属性在粘贴时已自动做了改动,比如原来的文本框叫textl,复制出来的文本框会自动叫textZ(再复制就会叫text3),在一个表单中是不允许出现两个同名的控件,系统会自动遵守这一点,故我们可以不用去修改n~了。当然也可以根据程序开发的需要,把它改为一个有实际含义的名称。

另外在复制控件时不光属性会被复制,其中的事件代码也会被复制。可以把一个表单中的控件复制到另一个或更多的表单中。比如很多时候退出或取消按钮都是一样的,其中的click事件中都是“thisform.release”语句,通过复制就可以把份个表单中的按钮复制到另一个表单中,有时可能会需要改一下caption或在click事件中加减一两条语句。还有向上移动记录和向下移动记录的按钮,其中的事件程序也都差不多,也可以复制,然后将不同的地方修改一下。

但是复制粘贴后的控件往往就会被复制在鼠标停留的地方。这样就应影响了整个表单的外观,这时应当通过鼠标粗调控件的位置,或者通过键盘上的方向键细调控件的位置。

2.缩格及空行

标准的程序编写具备良好的风格。合理恰当的缩格和空行都会使程序结构清晰易懂。

Visual FoxPro6.0中有很多语句是成对的,比如if和endif, do while和enddo,为了把成对语句之间的语句和之外的语句区别开来以利于程序的阅读和理解,有经验的程序员往往都是把成对语句之间的语句往里缩。

此外,一个良好的程序还应当有良好的注释,即使是程序的功能很简明,往往也会用空行分开,以表示此功能已经实现‘这就是粼7所说的空行。这就有点像写文章分段,一段相对完整的意思做为一段,编程时也把一段相对完整功能的程序做为一段,一段完了可以空上一行,也是便于程序的阅读。

3.在程序中插入对象名称

在编写面向对象的程序时,经常要引用一个对象的名称,而且要用这个对象的全名,比如thisform.textl o如果控件数目过多,就很难记住表单中每个控件的名字。所以在编程的时候应注意给主要的控件的。~属性赋值,这里再介绍一种方法可以看到所有该表单中的控件名,方便编码人员查找、在要插入一个对象引用名称的位置上单击鼠标右键,在弹出的菜单中选择“对象列表”在出现的对象列表中选择所要的对象,单击插入之后插入的名称会以大写字母开头。

4.精确调整对象位置

在编程序时可以发现当移动一个控件时它是跳着走的,而且是按照表单上的虚线格跳,这主要是为了我们的控件都能对整齐。但有时候如果不需要对整齐,而要做一些小小的调整,即不按格跳,就可以采取以下的步骤。

选择菜单上的“格式”,再选择其中的“对齐格线”。将其左边的钩去掉,然后再移动控件的时候,将会发现控件可以移动自如。如要恢复原来的状态,再把钩加上。

5.为文件写说明

在开发一个较大的软件时,在项目管理器中会有很多的文件,当文件多到一定数目的时候,可能都搞不清这些文件的功能是什么,为了防止这一点,应该为每个文件写上说明方便随时了解每个文件的作用。

具体方法如下:

用鼠标右键单击一个文件名,在弹出的菜单中选择编辑说明,在出规的表单中写入该文件的说明文字,单击“确定”按钮。之后当用鼠标选中这个文件时,相应的说明就会显示在项目管理器的底部。事实证明,这样可以大大减少修改文件的时.

重命名文件

在编软件时免不了有时要改文件名,方法是在项目管理器中用鼠标右键单击一个文件名,在弹出的菜单中选择“重命名”,在弹出的对话框中重新输入新的文件名。

7.修改数据表时调整字段位置

当我们需要调整数据表中的字段位置,可在表设计器中很方便地移动。进入表设计器, 用鼠标按住字段移动钮,然后上下移动到所需的位置即可。

8.调用表格中各列的位置

在表格生成器中移动,用鼠标按住选定字段中的字段移动钮上下移动,与上面移动数据表的字段一样。

在表单中移动,在属性窗口中选择表格的任一列,然后在表格上抓住要移动列的表头左右移动到所需位置即可。

在程序运行时移动,直接抓住要移动列的表头左右移动到所需位置。

9.设置控件的tabindex位置

一般说来,进入一个表单后,希望光标停在第一个输入位置,按回车则光标依次向后跳,但是有时可能会发现,光标不依这个顺序走,这是因为在设计和创建这些控件时没有按照所需的顺序,也就是在表单上先创建的控件,光标就先到。下面就如何更改光标在每次回车后的顺序。

设置控件的tabindex属性可以改变这个顺序,但直接改变tabindex属性很麻烦.Visual FoxPro6.0提供了很方便的改变方法0用鼠标按下表单设计器工具栏上的按钮攀,每个控件的tabindex顺序即会标示出来,如图6-45所示,如果顺序不对,用鼠标按顺序将所有控件点一遍就行了,点完后在表单空白地方按一下,tabindex显示消失。

10.改程序前应先改系统分析

.当要对程序做功能上的修改(不是修改语句中的错误),应先看看系统分析,因为一个程序的各个部分是有着千丝万缕的联系的,当改了一个地方,可能导致另一个地方出问题,所以我们应先对系统分析修改,并平衡各方面关系,觉得系统分析上没有逻辑上的冲突和错误后,再按照新的系统分析去修改程序。

这样修改永远都可以保持有一个清晰的思路,而不会把程序改来改去,到最后自己都不知道改成什么样了,如果这时需要别人来帮忙修改更是不可想象。.

11.删除项目管理器中的文件

如果不想要项目管理器中的某个文件,可用“移去”按钮将这个文件从项目管理器中移出去。当调用移去功能时,系统会问是移去还是删除,移去一个文件并没有从磁盘上将其真正删除,如要真正删除,则应选择“删除”。

当然移去后的文件可用其它方式删除,但千万不要用其它方式删除一个在项目管理器中存在的文件,这样会造成项目管理器打开出错。一旦出现这种情况,在打开项目管理器时会出现提示找不到某个文件,这时选择“忽略”,然后进入项目管理器,再将这个文件移去,这时不要用删除,因为这个文件己不存在,删除则又会出错。

  6 系统的编译和发行

1设里主文件

用主图标(以黑体的文件表示)标记的文件是客户在启动.app或者是.e职时被调用的文件。它可以是一个表单。菜单李程序,建议使用程序作为主文件。

2构造主文件,

如果主文件是一个程序,它将调用应用程序框架中的各个功能组件。然后由这些组件调用应用程序的其余部分。..

如果要建立一个简单的主程序,可以按下列步骤进行。

(1)现设置应用环境界面。

(2)确定初始用户界面。

(3)建立事件循环。

(4)恢复环境,退出应用程序。

为了避免无限循环,必须在READ EVENTS命令之前安排CLEAR EVENTS命令。可以在主菜单或主表单中添加一个呵退出”项,该项发出CLEAR EVENTS命令。

3在.app和.exe文件中包含和排除文件.

如果在发布的应用程序中不想再更改这些文件,可把它们放在项目中并设置为“包含”。

那么这些文件变成只读的,不能修改。如果想修改这些文件,把它们放到项目中并设置为“排除”,然后作为独立文件随着应用程序一起发布。

.在默认情况下,Visual FoxPro在嵌放的过程中排除了数据库、表格·称为.ff的“库文件和.app文件。建议用户除了一些特定的表格,最好不要包含这类文件:数据库和表格需要变化和添加,而如果编译后包含自:exe或者是-app文件中,由于这两个文件被创建后都是静态的,所以被包含的文件也是静态的和只读的。把数据库和表格包含在这些文件中很明显会带来问题。

由于这些文件不能被包含在文件.app和.exe中,所以要在发布一个应用程序之前为这些文件做好准备。若要排除可修改的文件,首先在项目管理器中,选择可修改的文件,然后从“项目”菜单中选择“排除”命令。在一个文件被排除后,则在文件的左方加入一个排除符号。

7运行结果

图书馆管理信息系统各模块运行结果如图6-46到图6-53所示,以下所列为几个重要的.

图6-46读者种类信息界面图6-47书籍类别信息界面

图6一49书籍信息界面图6一50添加借书信息界面

图6一51修改借阅信息图6一52添加还书信息

总  结

一个完整的图书馆管理信息系统到此就制作完成了。通过这次毕业设计,使我受到了一次用专业知识、专业技能分析和解决问题的全面系统的锻炼。使我在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。为日后成为合格的应用型人才打下良好的基础。这次在指导老师的帮助下,在同学的帮助下,基本上完成了设计任务,在软件的设计方面也有了一定的提高,熟练掌握了VISUAL  FOXPRO命令和编程技巧,为今后走上工作岗位打下了专业基础。在这次的毕业设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。最后,我要衷心感谢老师在我的设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的毕业设计。同时,也要感谢我的老师和同学们及实习企业在本系统的设计过程中给予我的支持和帮助。

《图书管理系统》毕业论文相关推荐

  1. 图书管理开题报告php,基于PHP+SqlServer的图书管理系统,毕业论文设计,答辩ppt,开题报告,外文翻译,苹果,硕士研究生,iphone...

    BMS 基于PHP+SqlServer的图书管理系统 这是"数据库实用技术"课程的大作业,设计一个图书管理系统(Book Management System). 其实PHP和Sql ...

  2. 图书管理系统html_你的毕业设计是 XX 管理系统吗?

    关注我的兄弟有还在上学的吧 毕业设计是不是刚刚开题 ? 老实说,你是不是搞的图书管理系统啊 ? 记得上学那会,宿舍 6 个人,5 个管理系统 最后几天恶补毕业论文 排版格式搞得自己头皮发麻 第一次体会 ...

  3. (附源码)springboot图书管理系统 毕业设计 160934

    Springboot图书管理系统的设计与实现 摘 要 大数据时代下,数据呈爆炸式地增长.为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势.在 ...

  4. (附源码)小程序 图书管理系统 毕业设计 250858

    Node.js图书管理小程序的开发 摘 要 大数据时代下,数据呈爆炸式地增长.为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势.在图书馆管理 ...

  5. java-php-python-ssm图书管理系统演示录像 2021计算机毕业设计

    java-php-python-ssm图书管理系统演示录像 2021计算机毕业设计 java-php-python-ssm图书管理系统演示录像 2021计算机毕业设计 本源码技术栈: 项目架构:B/S ...

  6. 基于SpringBoot的社区小型图书管理系统的设计与实现

    作者主页:Designer 小郑 作者简介:Java全栈软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发(Vue.SpringBoot和微信小程序).系统定制.远程技术指导. ...

  7. c语言图书管理系统解析,基于C语言的图书管理系统的设计与实现解析.doc

    毕业论文 题目:基于C语言的图书管理系统的设计与实现 英文题目:Design and Implementation of Books Management System Based on C Lang ...

  8. 学校图书管理系统基于c语言源代码,基于C语言的学校图书管理系统参考.doc

    基于C语言的学校图书管理系统参考 本科学生毕业论文(设计) 题目(中 文):基于C语言的学校图书管理系统(英 文):School Library Management System Based on ...

  9. 教材征订管理系统c语言,基于C语言的图书管理系统的设计与实现范文.doc

    毕业论文 题目:基于C语言的图书管理系统的设计与实现 英文题目:Design and Implementation of Books Management System Based on C Lang ...

  10. 基于JSP(java)图书管理系统的设计和实现(含源文件)

    获取项目源文件,联系Q:1225467431,可指导毕设,课设 摘 要 伴随着互联网的蓬勃发展,人们已经不再满足于信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利.掌握计算机知识和应用 ...

最新文章

  1. IIS6.0应用程序池回收和工作进程
  2. 学习ASP.NET Core Razor 编程系列五——Asp.Net Core Razor新建模板页面
  3. 带你认识SAP反记账
  4. .net 实现文件下载2
  5. C# 实现多线程的同步方法详解
  6. Quartz以及代码实现--可以实现定时器效果
  7. 谷歌guava_Google Guava:您永远不会知道的5件事
  8. 138. 复制带随机指针的链表 golang
  9. Java实现MD5编码32位
  10. 拥抱变化——从Atlas到ASP.NET AJAX(4):大大简化的了的Extender扩展器控件
  11. win10系统更新在哪_一键关闭win10系统更新,一款不错的小工具
  12. (29)Gulp组合任务
  13. Akka-Cluster(0)- 分布式应用开发的一些想法
  14. 如何运用大数据舆情监测分析软件监测分析舆情的方法技巧
  15. 电费管理系统php,25175水电费管理系统
  16. excel锁定单元格不能修改_3步让表格只能输入不能修改,保护表格格式,快速搞定数据汇总...
  17. Java导入导出功能
  18. 在虚拟机下运行gazebo,关于vmw_ioctl_command error Invalid argument错误
  19. 【java学习笔记day01】运行第一个程序Helloworld!
  20. python说话语音代码_Python文字转换语音,让你的文字会「说话」,抠脚大汉秒变撒娇萌妹...

热门文章

  1. 第十二课:OpenGL扩展
  2. canoe和python_CANoe开发从入门到精通
  3. 浅谈软件研发管理体系建设
  4. SendEmail--邮件分发管理系统
  5. 教你炒股票25:回复(1)
  6. The proxy server is refusing connections 怎么解决呢?
  7. 科技爱好者周刊:第 100 期
  8. 需求与商业模式分析-2-商业模式类型
  9. VC2013生成的程序兼容WindowsXP操作系统
  10. 遥感影像数据下载网址