vf课程设计 图书管理系统(界面很漂亮)

合集下载

毕业设计计算机基于vfp的图书管理系统[管理资料]

毕业设计计算机基于vfp的图书管理系统[管理资料]

摘要图书管理系统是一个教育单位不可缺少的部分,它的内容对于学校图书馆的管理十分重要。

所以,图书管理系统不但要为图书管理者提供充足的信息和快捷的查询手段。

而且也要为学生查询提供必要和快捷的查询手段,但一直以来人们仍使用传统人工的方式管理图书式存在着许多缺点,如:效率低、工作量大等,而且,随着图书数量的增长,于图书信息的查找新和维护都带来了不少的困难。

作为计算机应用的一部分,使用计算机对图书信息进行管理,具有着手工管理所无法比拟的优点。

例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高图书管理的效率,也是图书馆的科学化、正规化管理,与世界接轨的重要条件。

【关键词】:系统规范速度准确效率目录引言 (1)第1章系统开发的技术背景 (2)编程环境的选择 (2)关系型数据库的实现 (2)visualfoxpro的简介 (2)第2章数据库逻辑设计 (4) (4) (4) (4) (5)2. (5) (5) (7)第3章系统总体规划 (10) (10) (10) (10) (11)第4章系统模块具体实现 (12)4.1系统模块划分 (12) (18)4.3菜单设计与实现 (18)4. (18)4. (18)第5章统程序构成和实现 (20) (20) (20)参考文献 (23)前言现代人的生活离不开图书,不论在家还是在公司,读书已经成为了一种生活惯。

然而现在的图书种类繁多,数量庞大,出版速度快,要对这些书籍进行管理,传统的纯人工管理方法已经不能适用。

为了更好,更快的管理这些图书,我们必须提出一种行之有效的方法。

为此我们需要一个高效率的系统来进行管理。

计算机的发展在很大程度上帮助我们解决了这个问题。

首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全等。

现在我国的很多学校图书馆,公司,企业都是用了计算机管理图书资料,这种管理机制节省了很多人力和物力,在信息时代这种管理方法必然被广泛应用。

(完整)VFP课程设计1

(完整)VFP课程设计1

VFP课程设计图书管理信息系统一、系统需求分析1.系统功能需求(1)图书借阅与归还:某位读者借了那些书,借了多长时间.(2)快速图书查找(3)操作简单,直观,实用。

2.系统数据关系的E—R图:图1图1二、系统设计1.功能设计(1)图书借阅(2)图书归还(3)借书证办理与退还(4)图书入库与报废2.数据库设计(book。

dbc)(1)(2)(3)(4)3.模块设计一个菜单、一个报表、四个表单图2 三、系统实现1.借书登记 do form jsdj.scx 命令还书登记 do form hsdj.scx 命令退出 quit 命令2.表单设计:(1)图书证办理与退还表单与reader.bdf相连,用户从“借书证编号”文本框中输入一个借书证号,如果表中已存在则显示,否则为空,点击办理按钮,可输入新资料并赋时间为当前日期.退出表单时,系统自动将新数据存到对应表中;但即“退还”则把当前日期赋给相应的字段。

表示归还。

控件属性/过程值Label Caption借书证编号:name Label1Text Name Text1interactivechange thisform.dataenvironment.cursor1。

filter=’dzbh='+”’"+trim(this.value)+"'"thisform。

refreshreturnlostfocus thisform.dataenvironment。

cursor1.filter=’dzbh='+"'"+trim(this.value)+"'”thisform。

refreshreturncommand Name Command1Caption办理借书证Click select(thisform。

dataenvironment.cursor1。

alias)append blankreplace dzbh with thisform.text1。

vfp图书馆课程设计

vfp图书馆课程设计

vfp图书馆课程设计一、教学目标本课程旨在让学生掌握VFP图书馆的基本知识和操作技能,能够运用VFP进行图书馆管理。

具体目标如下:1.知识目标:学生能够理解VFP图书馆的基本概念,掌握图书信息的录入、查询、修改和删除等操作。

2.技能目标:学生能够熟练使用VFP进行图书馆管理,包括图书信息的录入、查询、修改和删除等操作。

3.情感态度价值观目标:学生通过本课程的学习,能够培养对图书馆管理的兴趣,提高信息素养,养成良好的信息检索习惯。

二、教学内容本课程的教学内容主要包括VFP图书馆的基本概念、图书信息的录入、查询、修改和删除等操作。

具体安排如下:1.第一课时:VFP图书馆的基本概念和操作界面。

2.第二课时:图书信息的录入和查询。

3.第三课时:图书信息的修改和删除。

4.第四课时:VFP图书馆的高级应用。

三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。

具体方法如下:1.讲授法:用于讲解VFP图书馆的基本概念和操作方法。

2.讨论法:用于引导学生探讨图书馆管理的问题和解决方案。

3.案例分析法:用于分析实际 library management cases,培养学生解决实际问题的能力。

4.实验法:用于让学生亲自动手操作VFP,提高实际操作能力。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:1.教材:《VFP图书馆管理》。

2.参考书:图书馆管理相关书籍。

3.多媒体资料:教学PPT、视频教程等。

4.实验设备:计算机、网络等。

五、教学评估为了全面、客观、公正地评估学生的学习成果,本课程将采用多种评估方式,包括平时表现、作业和考试等。

具体安排如下:1.平时表现:占课程总评的30%,包括课堂参与度、提问回答、小组讨论等。

2.作业:占课程总评的30%,包括课后练习、项目任务等。

3.考试:占课程总评的40%,包括期中考试和期末考试。

vfp图书管理系统课程设计

vfp图书管理系统课程设计

vfp图书管理系统课程设计一、课程目标知识目标:1. 掌握VFP(Visual FoxPro)图书管理系统的基础知识,包括数据库操作、表单设计和程序编写;2. 学会使用VFP创建、修改和查询图书信息;3. 了解图书管理系统的业务流程,并能运用VFP实现相关功能。

技能目标:1. 能够独立设计并实现一个简单的VFP图书管理系统;2. 掌握运用VFP进行数据输入、处理和输出的方法;3. 学会分析实际问题,运用所学知识解决图书管理中的具体问题。

情感态度价值观目标:1. 培养学生对信息技术的兴趣,激发他们学习编程的热情;2. 培养学生的团队协作意识,提高沟通与协作能力;3. 增强学生的实际操作能力,使他们体会到学以致用的成就感。

课程性质:本课程为信息技术课程,以实践操作为主,结合理论讲解,培养学生的编程兴趣和实际操作能力。

学生特点:本课程面向初中年级学生,他们对计算机操作有一定的了解,对编程有一定的好奇心,但需要进一步引导和培养。

教学要求:结合学生特点,课程设计应注重理论与实践相结合,以任务驱动法引导学生主动参与,培养他们的实际操作能力和解决问题的能力。

课程目标分解为具体学习成果,以便在教学过程中进行有效评估和调整。

二、教学内容1. VFP基础知识:介绍VFP的基本概念、环境设置和基本操作,包括数据类型、变量、常量、运算符和表达式等。

教材章节:第一章Visual FoxPro基础内容列举:数据类型、变量声明与赋值、运算符、表达式编写。

2. 数据库操作:学习如何创建数据库、表,掌握数据表的基本操作,如插入、修改、删除和查询数据。

教材章节:第二章数据库与表内容列举:数据库创建与管理、数据表设计、数据表操作命令、SQL语句基础。

3. 表单设计:介绍表单的基本概念,学习如何设计表单界面,实现用户与程序的交互。

教材章节:第三章表单设计内容列举:表单设计基础、控件使用、事件与方法、表单布局设计。

4. 程序设计:学习VFP程序设计基础,掌握顺序、分支和循环结构,实现图书管理系统的功能模块。

浅谈基于VF的高校图书馆管理系统的分析与设计

浅谈基于VF的高校图书馆管理系统的分析与设计

的处 理 。有些 图 书如周 刊 , 刊 , 志等 更换 的频 率 较 报 杂 高 。 时需 要 每天 更换 。 有 些大 型 图书 则 可能 几 年 才 有 而
更换 一次 。这 些 信息 的发 布 和注 销要 求 管 理员 及 时 掌 述几 大功 能逐 一实 现 握. 时效性 非 常重 要 。 在 数据 关 系 简单 的情 况下 对 数 据处 理 .可 以在将 图书 管 理 系统 实现 了对 图书 管 理 的科 学 化 .快 捷 数据 库设计 好 之后 直 接设 计 程序 。但 是按 正 规 的数 据
逾 期 书 信 息 裔 询 窗 口
姓名 、 学生 系别 查询 。 可 以查询所 有学 生信 息 。如 查 还 到 , 出所查 的信息 , 可 以打印 出所查 到 的信息 。 图 列 还 书信 息查 询 可 以按书 名查 询 、 出版 社查 询 、 类别 查 按 按 询 , 可 以查 询 所 有 的图 书 , 询 成功 , 以在屏 幕 上 还 查 可 列 出所 查 、 息 , 可 以打 印出来 。逾期 书信 息查 询是 信 还
通 过 高校 图书管 理系 统 的应 用 .主要需 要完成 以 本 设计 实 现 图 书借 书借 阅 的智能 化管 理 .通 过建 下 功能 : 立 一个数 据库 系统 ,快 速实 现数 据 的更 新 、查询 与统 ( ) ” 书资 料 管 理 ” 块 中 图书 资 料 的分 条浏 1在 图 模 计 。系统模 块 图如 图 3 览、 添加 、 改 、 修 删除 、 询和 打印功 能。 图书资料查 查 在”
重要 的是 操作 手 段 和途径 因素 . 实 际就是 四项 :
为 了减 少 旧书 和 大量 内容重 复 多余 的 图书 占用 有
限 的空 间而又 要尽 量 做到 图书种类 的齐 全 .作 为 图 书 馆 的工作 人员 来说 需 要及 时地 对 图 书进 行上 架 和 注 销

vfp书馆课程设计

vfp书馆课程设计

vfp书馆课程设计一、课程目标知识目标:1. 学生能理解并掌握VFP(Visual FoxPro)的基本概念,包括数据库结构、数据表设计和查询;2. 学生能够运用VFP编程语言完成简单的数据处理任务;3. 学生能够运用VFP的查询功能进行数据检索和数据分析。

技能目标:1. 学生能够独立设计并实现一个小型的图书管理系统,包括数据表创建、数据录入、查询和报表生成;2. 学生通过本课程的学习,培养解决问题的能力,学会使用VFP解决实际问题;3. 学生能够通过团队合作,共同完成项目任务,提高沟通与协作能力。

情感态度价值观目标:1. 学生通过学习VFP,培养对信息技术的兴趣,提高学习信息技术的积极性;2. 学生在学习过程中,能够树立正确的价值观,认识到信息技术在现实生活中的重要性;3. 学生能够养成严谨、认真的学习态度,培养良好的编程习惯。

课程性质:本课程为信息技术课程,旨在通过VFP教学,提高学生的数据库管理和编程能力。

学生特点:学生处于初中年级,具备一定的计算机操作基础,对编程有一定的好奇心和兴趣。

教学要求:结合学生特点,注重实践操作,以项目驱动教学,让学生在实际操作中掌握VFP知识,培养其技能和情感态度价值观。

将课程目标分解为具体的学习成果,以便于后续的教学设计和评估。

二、教学内容1. VFP基本概念:数据库、数据表、字段、记录;2. 数据表设计:实体关系、主键、外键、索引;3. VFP编程基础:数据类型、变量、运算符、常用函数;4. 数据库操作:创建数据库、添加/删除数据表、数据录入与编辑;5. 查询与视图:简单查询、条件查询、排序查询、视图创建与应用;6. 报表与输出:设计报表、数据分组、汇总、打印;7. 图书管理系统项目实践:需求分析、系统设计、功能实现、测试与优化。

教学大纲安排:第一周:VFP基本概念与数据表设计;第二周:VFP编程基础与数据库操作;第三周:查询与视图;第四周:报表与输出;第五周:图书管理系统项目实践。

毕业设计(论文)-基于vfp的图书管理系统设计[管理资料]

毕业设计(论文)-基于vfp的图书管理系统设计[管理资料]

高等教育自学考试计算机信息管理专业(本科)毕业设计基于VFP的图书管理系统设计摘要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。

管理信息系统是一个不断发展的新型学科,企业要生存要发展,要高效率地把企业活动有机地组织起来,就必须加强企业管理,即加强对企业内部的各种资源(人、财、物等)的有效管理,建立与自身特点相适应的管理信息系统。

本文介绍了在PowerBuider环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。

通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。

文章详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、组织机构分析、管理职能分析、业务流程分析、数据流程分析、数据字典、处理描述等等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了几个主要的程序框图,并附带了一些主要的窗口和程序。

本系统界面友好,操作简单,比较实用。

【关键字】管理信息系统、图书管理、PowerBuider应用。

目录一前言 (1)1MIS系统开发方法 (1)2MIS系统开发过程 (2)二系统需求分析 (4)1现行业务描述 (4)2现行系统存在问题的分析 (5)3解决方案 (6)三系统总体结构设计 (7)1系统目标设计 (7)2系统功能分析 (8)4数据流图 (9)四数据库设计 (13)1数据库需求分析 (11)2数据库逻辑结构设计 (12)五图书管理系统主要窗体设计 (19)六结束语 (41)一前言随着人类社会的发展,人类对知识的需求也不断地增长。

在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就必不可少了。

管理信息系统(简称MIS)是介于信息论,经济管理理论,统计学与运筹学及计算机科学之间的一门边缘性,综合性,系统性的交叉科学,它是随着管理科学,信息技术,计算机技术等的发展而产生和发展起来的。

大学计算机VF课程数据库设计作业之“图书管理系统”

大学计算机VF课程数据库设计作业之“图书管理系统”

图书管理系统综合设计说明一、系统名称:图书管理系统二、制作人:强小康(组长)代承华翟鹏宇袁俊符永马三、系统详细说明:1)总体结构设计在开始程序设计之前。

首先将程序的总体结构以层次图的形式表现出来,便于对程序分层设计和实现,下图为图书管理系统的功能模块图:2)数据库的逻辑设计(1)建立E-R图用E-R图方式来建立图书管理系统中相关实体及其联系的模型,如图所示,矩形框表示实体,菱形框表示实体间的联系,椭圆表示实体和联系的属性(2)根据E-R图进行分析建立关系模式:✧图书(书号、作者编号、书名、价格、数量、出版社)✧作者(作者编号、作者姓名、职称、联系电话、备注、照片)✧读者(读者编号、读者姓名、性别、出生日期、民族、籍贯、联系电话、照片)✧借阅(读者编号、读者姓名、书号、借书日期、还书日期)✧用户表(读者编号、用户名、密码)3)分工合作建立整体系统软件翟鹏宇:数据库的物理设计,包括五张表格分别为图书基本表、作者基本表、读者基本表、借阅表、用户表以及一个数据库文件将各个文件的索引字段连接起来,形成一个图书管理数据库代承华:界面设计,包括创建启动表单和身份验证表单强小康:设计主表单和主菜单袁俊:设计“图书登记”和“借书登记”两张表单符永马:设计“读者信息维护”和“读者借书信息查询”两张表单下面是各个成员所做信息的电子档图示:翟鹏宇:新建→表→图书基本表→use 图书基本表→追加记录(3条)→主索引:书号;普通索引:作者编号新建→表→作者基本表→use 作者基本表→追加记录(3条)→主索引:作者编号新建表→读者基本表→use 读者基本表→追加记录(6条)→主索引:读者编号新建表→借阅表→use 借阅表→追加七条记录→普通索引:读者编号,书号新建表→用户表→use 用户表→追加6条记录→普通索引:读者编号Creat database 图书管理系统Open 图书管理系统Add 图书基本表Add 作者基本表Add 读者基本表Add 借阅表Add 用户表Modify 图书管理系统数据库设计器-图书管理系统中,通过拖曳索引字段在各表之间建立关联如图所示:代承华:界面设计:1)、创建启动表单新建表单对表单的各属性进行设计,如图界面图片,根据电脑的不同而不同。

VFP图书管理系统

VFP图书管理系统

管理系----VFP图书管理系统Management system of VFP book摘要 (2)正文 (3)一、课程设计目的 (3)二、需求分析 (3)三、软件的描述目标及作用范围 (3)四、功能描述 (3)五、性能 (3)六﹑VFP数据库系统主要的概念简介……………………………….…4七、可行性研究…………………………………………………………5八、系统的概要设计………………………………...……….…………6九、系统的详细设计 (7)十、代码的详细设计 (9)毕业设计总结 (11)致谢 (11)参考文献 (11)图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,一方面要求建立起数据一致性和完整性强、数据安全性好的库另一方面则要求应用程序功能完备,易使用等特点。

因此本人结合学校图书借阅的要求,对Visual FoxPro数据库管理系统、SQL 语言、VF应用程序设计进行了较深入的学习和应用,主要完成对图书管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。

VFP图书管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和图书管理者来说都至关重要,所以图书管理系统应该能够为教师和学生提供充足的图书信息和快捷的查询手段。

但一直以来人们使用传统人工的方式管理图书文件档案,这种管理方式存在着许多缺点,如:效率低、容易丢失等,另外时间一长,将产生大量图书数据混乱等管理麻烦,这对于查找、更新和维护都带来了不少的困难。

使用计算机对学校图书信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高图书管理的效率,也是教学的科学化、正规化管理,与世界接轨的重要条件。

这个系统还提供了对学生毕业状况管理方面的支持,该系统可以快捷的查询到一个学生的相关个人信息和该学生的毕业总评的相关信息,使老师在方便的管理图书档案的同时,还可以查询到借阅该书的学生的相关信息,是学生管理和图书管理一体化,节约了学校的成本。

vfp图书管理系统

vfp图书管理系统

图书管理系统实例梅毅一、系统简介1、本图书管理系统,包含了对图书、作者、读者等基本信息的管理,也包含了借书信息,还书信息等的查询,和管理。

本系统具有如下功能:能够修改、输入、查询、与图书有关的信息,如图书信息、读者信息、作者信息、图书借阅信息等:能打印图书信息,图书借阅信息等。

2、本系统的总体设计树状图二、具体操作步骤1、创建项目,名为图书管理系统2、数据库设计(2)在项目中创建一个数据库,并把五个表添加到数据库中。

在图书表中,为书号建立主索引,为作者编号建立普通索引,通过该索引和作者表之间创建关联。

在作者表中,为作者编号设置主索引。

在读者表中,读者编号为主索引。

在借阅表中,为读者编号、书号字段创建普通索引,通过书号和图书表之间关联;通过读者编号和读者表之间关联。

在用户表中,为读者编号建立索引,通过读者编号和读者表建立关联。

最终形成如下图所示的数据库。

3、界面设计(1)系统启动表单在项目中创建一个表单,命名为启动。

如下图,添加一个标签控件,两个命令按钮,按照自己的喜好分别设置他们的属性。

在登录按钮的Click事件下写入如下代码:ThisForm.ReleaseDo form 身份验证双击退出按钮,并在它的Click事件写下如下代码:Clear event(2)创建身份验证表单在项目中创建,一个表单,保存为“身份验证”并按以下图添加控件,设置属性。

打开他的数据工作环境,把“用户”表添加到其中,在进入的click事件写入如下代码:locate for 用户名=bo1.valueif alltrim(thisform.Text1.value)<>alltrim(密码)messagebox("读不起,密码有误!你不能进入本系统",0,"请注意:")elsethisform.releasedo form 主表单endif在退出的click事件下写如下代码:thisform.releaseclear event(3)创建主表单创建一个表单保存为“主表单”并且设置它的ShowWindows属性为“2——作为顶层表单”如图设置它的其他控件属性。

VFP图书馆全开架借阅管理系统

VFP图书馆全开架借阅管理系统

图书馆开架借阅系统摘要全开架借阅是当今高校图书馆发展的必然趋势。

实行全开价借阅,不仅方便读者,大大促进图书馆资源的开发和利用,而且也能全方面体现图书馆的综合服务功能。

但目前绝大多数高校的图书馆系统不尽人如意,不能适应全开架借阅的管理需求。

因此笔者设计了这套图书馆全开架借阅管理系统软件,希望为读者和管理者提供较为科学的,全面的服务。

关键字:Visual FoxPro6.0 数据库高校图书馆借阅管理系统目录引言 (4)1 开发图书馆借阅管理系统的思考 (5)1.1全开架借阅图书方式的优势 (5)1.1.1全开架借阅是当今图书馆开放管理的必然趋势 (5)1.1.2全开架借阅是优势明显的,使读者,管理者双赢的管理方式 (5)1.2全架借阅图书管理系统的优势 (5)1.2.1体现“以人为本”的先进管理概念 (5)1.2.2满足读者自我服务意愿,促进管藏资源的开发和利用 (5)1.3方便管理者,促进管理者为读者的综合性服务 (6)1.3.1提供全面,科学,有效的信息服务 (6)1.3.2.具有完善的管理功能............................ 错误!未定义书签。

1.3.3.管理安全可靠性................................ 错误!未定义书签。

1.4 为图书馆自动化管理奠定了基础........................ 错误!未定义书签。

2.系统分析与设计.......................................... 错误!未定义书签。

2.1需求分析............................................ 错误!未定义书签。

2.1.1管理系统的总体框架............................. 错误!未定义书签。

2.2模块分析 (6)2.2.1功能模块图 (6)2.2.2模块分析....................................... 错误!未定义书签。

VFP课程设计-图书管理系统

VFP课程设计-图书管理系统

目录一、需求分析 ......................................................................................................... *二、系统总体设计.................................................................................................. *三、系统详细设计.................................................................................................... *四、调试与维护...................................................................................................... *五、结束语 ............................................................................................................... *六、参考文献 ........................................................................................................... *七、指导教师评阅.................................................................................................. *一、需求分析图书管理信息的手工登录与查询,是一项非常繁重而枯燥的劳动,耗费许多人才和物力,而且会因人的情绪烦躁而出现失误,因此在计算机飞速发展的今天,应用数据库技术实现酒店管理是可行而必要的工作。

VF0007图书管理

VF0007图书管理

摘要随着计算机的普及和应用,加上图书馆流通系统部门是图书馆面向读者的一个重要窗口,所以大多数图书馆把流通自动化作为步入全面自动化的起点。

图书管理系统是图书馆的重要组成部分,本系统不仅对流通管理所涉及的数据给予分门别类的划分,而且还对其存贮结构进行了分析,尤其对链表的结构加以肯定。

另外,本系统还指出了管理系统中各个子系统的性质、特点和功能。

最后对系统的硬件环境也作了详细说明。

图书管理系统的各模块按原计划相继投入运行,并给学校的图书流通带来了可见的效率,而图书实际流通时间缩短到现在的一个月,而学生借书、还书的最长等待时间也明显缩短。

资金、管理等环节也增加了透明的和可控性。

系统的设计、开发和实施说明,作为一个中小型院校的图书管理系统,在资金、管理、人力等因素的制约下,增加图书、资金、流程等环节管理,提高图书管理水平,不仅是可行的而且也是必要的。

关键字:图书自动化流通管理系统系统设计目录摘要 (1)Abstract (2)前言 (5)第1章问题定义 (6)第2章技术可行性分析 (7)2.1 数据库的基本概念 (7)2.1.1 从文件管理到数据库管理 (7)2.1.2 数据库系统的特点 (8)2.1.3 Visual FoxPro的特点和功能 (8)2.1.4 数据库设计的重要性 (9)第三章“读者借书模块”的开发 (10)3.1需求分析 (10)3.1.1 系统需求 (10)3.1.2 解决方案 (12)第四章系统总体设计 (13)4.1 系统总体要求 (13)4.1.1 总体分析 (14)4.1.2 流通子系统 (14)4.2 软件工程概述 (14)4.2.1 项目的特点 (15)4.2.2 项目开发中常犯的错误 (15)1第五章详细设计 (17)5.1设计数据库 (17)5.1.1 “会员信息”表 (17)5.1.2 “书籍信息”表 (18)5.1.3 “书号_管内编号”表 (19)5.1.4 “借阅信息”表 (20)5.2 设计菜单 (22)5.2.1 “数据维护”菜单 (22)5.2.2 “查询”菜单项 (23)5.2.3 “借阅信息”菜单项 (24)5.3 数据维护模块 (24)5.3.1 “会员信息”表单 (24)5.3.2 “借阅信息”表单 (27)5.3.3 “书号_馆内编号”表单 (28)5.3.4 “借阅信息”表单 (29)5.4 查询模块 (31)5.4.1会员个人借书模块 (31)5.4.2书籍检索 (34)5.5 借阅记录 (37)5.5.1会员借书 (37)5.6 过期会员管理 (42)5.6.1设计“查看过期会员”表单 (43)第六章测试 (45)测试用例 (45)结束语 (54)参考文献 (55)致谢 (56)附录原代码 (57)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

visual foxpro课程设计报告专业:珠宝学院珠宝设计专业班级:142091学号:************名:**题目名称:图书管理系统熊玮版完成日期:2011年1月29日目录一、前言——————————————— 3二、系统概况————————————— 3三、需求分析————————————— 2四、数据库设计———————————— 4五、主程序清单————————————9六、模块界面与代码——————————13七、设计小结—————————————63前言长期以来,图书管理都是依赖人工进行的,面对如此众多的图书信息,其工作量可想而知,不仅仅浪费了大量的人力物力,而且由于人工管理存在着大量的不可控因素,造成了图书管理的某些不规范。

在学校,尤其是在大中专院校,图书管理是学校的一项重要的数据资源,图书管理也是学校的一项常规性的重要工作。

随着社会的日益发展,尤其是科技的迅猛发展,计算机广泛地应用在生产生活的各个方面,不仅提高了工作效率,而且也降低了劳动强度,美化了我们的工作环境。

在电子信息化时代,设计一款计算机图书管理系统尤为必要,它不仅能大大减轻图书馆工作人员的工作量,而且全面提高图书馆的管理效率及服务质量。

我以Visual Foxpro 6.0为环境,开发了此应用软件,本系统适用于各类小型图书馆,以及各类大中专院校、中小学校的图书馆和资料室的现代化综合管理。

系统概况一、课题名称:图书管理系统熊玮版二、设计环境:开发工具:Microsoft Visual FoxPro 6.0操作系统:Windows XP需求分析一、系统功能分析图书管理系统的主要任务是对图书馆图书信息、读者个人信息、图书借阅归还信息的查询、统计、更新,并且能按一定要求输出报表。

通过该系统,使图书管理工作系统化、规范化、自动化,从而提高图书管理的效率。

二、系统功能模块设计本系统分为如下的几大模块:1、主界面模块该模块提供管理系统的主界面,是主系统的唯一入口和出口,该界面提供用户选择并调。

2、图书管理模块该模块提供图书查询、修改、删除、入库功能界面。

3、读者管理模块该模块提供读者信息查询与注册功能界面。

4、读者借还书模块该模块提供读者借书、还书功能界面5、打印显示模块该模块按一定格式将图书、读者、借阅信息以报表格式输出。

6、其他模板提供设计作者介绍、程序升级说明和系统退出的界面。

三、数据流图数据库设计创建数据库是设计系统的第一步,其关键问题在于确定所需的表结构并为之建立索引。

为了使系统设计精练实用,体现关系型数据库的特点,本系统还为各相关表建立关系。

1、数据项设计通过需求分析,可确定系统的数据项和数据结构如下:a.图书的基本信息(ISBN、书名、作者、出版社、单价、类别、购买日期、简介、借阅状态)b.所借图书的读者与图书信息(read编号、书名)c.读者的基本信息(编号、班级、姓名、学号、姓别、权限、头像)d.管理员信息(用户名、密码)2、概念结构设计本系统在需求分析的基础上设计出能够满足用户需求的各种实体。

根据上面的分析所得的实体有:图书的基本信息实体(books)、所借图书的读者与图书信息实体(jieboos)、读者的基本信息实体(readpeople)。

各实体间的关系如图:3、逻辑结构设计所借图书的读者与图书信息表(jieboos.dbf)读者的基本信息表(readpeople.dbf)管理员信息表(user1.dbf)主程序清单主程序代码如下:(主程序1.prg)set talk offmodify window screen titl"图书管理系统熊玮版"cleado FORM welcomedo form 登陆界面do form 改进说明read events主菜单代码如下:(主界面.MNT)SET SYSMENU TOSET SYSMENU AUTOMA TICDEFINE PAD _34v1cqn46 OF _MSYSMENU PROMPT "图书管理(\A)" COLOR SCHEME 3 ;KEY CTRL+A, "CTRL+A"DEFINE PAD _34v1cqn47 OF _MSYSMENU PROMPT "读者管理(\B)" COLOR SCHEME 3 ;KEY CTRL+B, "CTRL+B"DEFINE PAD _34v1cqn48 OF _MSYSMENU PROMPT "读者借还书(\C)" COLOR SCHEME 3 ;KEY CTRL+C, "CTRL+C"DEFINE PAD _34v1cqn49 OF _MSYSMENU PROMPT "打印显示(\D)" COLOR SCHEME 3 ;KEY CTRL+D, "CTRL+D"DEFINE PAD _34v1cqn4a OF _MSYSMENU PROMPT "关于熊玮(\E)" COLOR SCHEME 3 ;KEY CTRL+E, "CTRL+E"DEFINE PAD _34v1cqn4b OF _MSYSMENU PROMPT "退出(\F)" COLOR SCHEME 3 ;KEY CTRL+F, "CTRL+F"ON PAD _34v1cqn46 OF _MSYSMENU ACTIV A TE POPUP 图书管理aON PAD _34v1cqn47 OF _MNU do form 借还书.scxON SELECTION PAD _34v1cqn49 OF _MSYSMENU do form 报表显示.scxON PAD _34v1cqn4a OF _MSYSMENU ACTIV ATE POPUP 关于熊玮eON SELECTION PAD _34v1cqn4b OF _MSYSMENU quitDEFINE POPUP 图书管理a MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF 图书管理a PROMPT "查询图书"DEFINE BAR 2 OF 图书管理a PROMPT "修改图书"DEFINE BAR 3 OF 图书管理a PROMPT "删除图书"DEFINE BAR 4 OF 图书管理a PROMPT "图书入库(\H)" ;KEY CTRL+H, "CTRL+H"ON BAR 1 OF 图书管理a ACTIV A TE POPUP 查询图书gON BAR 2 OF 图书管理a ACTIV A TE POPUP 修改图书ON BAR 3 OF 图书管理a ACTIV A TE POPUP 删除图书ON SELECTION BAR 4 OF 图书管理a do form 入库.scxDEFINE POPUP 查询图书g MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF 查询图书g PROMPT "按ISBN(\G)" ;KEY CTRL+G, "CTRL+G"DEFINE BAR 2 OF 查询图书g PROMPT "按书名"DEFINE BAR 3 OF 查询图书g PROMPT "按任意条件"ON SELECTION BAR 1 OF 查询图书g do form 查询-按isbn.scxON SELECTION BAR 2 OF 查询图书g do form 查询-按书名.scxON SELECTION BAR 3 OF 查询图书g do form 查询-按任意条件.scxDEFINE POPUP 修改图书MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF 修改图书PROMPT "按ISBN"ON SELECTION BAR 1 OF 修改图书do form 修改-按isbn.scxDEFINE POPUP 删除图书MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF 删除图书PROMPT "按ISBN"DEFINE BAR 2 OF 删除图书PROMPT "按任意条件"ON SELECTION BAR 1 OF 删除图书do form 删除-按isbn.scxON SELECTION BAR 2 OF 删除图书do form 删除-按任意条件.scxDEFINE POPUP 读者管理b MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF 读者管理b PROMPT "读者信息(\K)" ;KEY CTRL+K, "CTRL+K"DEFINE BAR 2 OF 读者管理b PROMPT "读者注册(\L)" ;KEY CTRL+L, "CTRL+L"ON SELECTION BAR 1 OF 读者管理b do form 读者查询.scxON SELECTION BAR 2 OF 读者管理b do form 读者注册.scxDEFINE POPUP 关于熊玮e MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF 关于熊玮e PROMPT "熊玮信息(\M)" ;KEY CTRL+M, "CTRL+M"DEFINE BAR 2 OF 关于熊玮e PROMPT "改进说明"ON SELECTION BAR 1 OF 关于熊玮e do form 关于我.scxON SELECTION BAR 2 OF 关于熊玮e do form 改进说明.scx快捷菜单代码如下:DEFINE POPUP 快捷菜单SHORTCUT RELATIVE FROM MROW(),MCOL() DEFINE BAR _med_paste OF 快捷菜单PROMPT "粘贴(\<P)" ;KEY CTRL+V, "Ctrl+V" ;MESSAGE "粘贴剪贴板上的内容"DEFINE BAR _med_copy OF 快捷菜单PROMPT "复制(\<C)" ;KEY CTRL+C, "Ctrl+C" ;MESSAGE "将选定内容复制到剪贴板上"DEFINE BAR _med_cut OF 快捷菜单PROMPT "剪切(\<T)" ;KEY CTRL+X, "Ctrl+X" ;MESSAGE "移去选定内容并将其放入剪贴板"DEFINE BAR _med_undo OF 快捷菜单PROMPT "撤消(\<U)" ;KEY CTRL+Z, "Ctrl+Z" ;MESSAGE "撤消上一次命令或操作"ACTIVA TE POPUP 快捷菜单模块界面1、登陆界面:对象名属性与属性值说明Form1 登陆界面Text1 输入用户名Text2 输入密码Command1 确定按钮Command2 注册按钮Command3 退出按钮Form1的init event 代码:thisform.Text1.setfocuscommand1的click event 代码:sele user1locate for allt(thisform.Text1.value)==allt(用户名)if found()if allt(thisform.Text2.value)==allt(密码)messagebox("登陆成功!欢迎进入熊玮的图书管理系统",0+64,"恭喜")do 主界面.mprthisform.releaseelsemessagebox("密码错误!请检查后重新输入!",0+64,"错误")thisform.Text2.value=""thisform.Text2.setfocusendifelsemessagebox("该用户不存在,请检查您的用户名!",0+64,"错误") endifcommand2的click event 代码:do form 注册界面.scxthisform.releasecommand3的click event 代码:quit2、注册界面对象名属性与属性值说明Form1 注册界面Command1 确定按钮Command2 继续注册按钮Command3 退出按钮Text1 输入注册用户名Text2 输入密码Text3 确认密码Form1的init event 代码:thisform.Text1.setfocuscommand1的click event代码:sele 1use user1locate for allt(thisform.Text1.value)==allt(用户名)if found()messagebox("操作失败,此用户名已经存在!",0+64,"错误")elseif allt(thisform.Text2.value)!=allt(thisform.Text3.value)messagebox("两次密码不一致!请检查后重新输入!",0+64,"错误")thisform.Text3.value=""thisform.Text3.setfocuselsemessagebox("操作成功!",0+64,"注册提示")insert into user1(用户名,密码) value( allt(thisform.Text1.value),allt(thisform.Text2.value) )endifendifusecommand2的click event代码:thisform.Text1.value=" "thisform.Text2.value=" "thisform.Text3.value=" "command3的click event代码:do form 登陆界面.scxthisform.release3、主界面——welcome对象名属性与属性值说明Form1 图书管理系统主界面Label1 滚动字幕Timer1Label2 本机时间Timer2Command1 按ISBN查询按钮Command2 读者信息查询按钮Command3 借还书查询按钮Command4 关于我按钮Timer1的timer event代码:if bel1.left<192bel1.left=480elsebel1.left=bel1.left-1endifTimer2的timer event代码:if bel2.caption!=time()bel2.caption=time()endifcommand1的click event代码:do form 查询-按isbncommand2的click event代码:do form 读者查询command3的click event代码:do form 借还书command3的click event代码:do form 关于我4、查询—按ISBN对象名属性与属性值说明Form1 查询—按ISBN界面Combo1 ISBN编号Command1 查询按钮Text1 书名Text2 出版社Text3 类别Text4 简介Text5 作者Text6 单价Text7 购买日期Text8 借阅状态Command6 退出按钮Command1的click event代码:if select("books")=0 &&检查数据表是否打开messagebox("数据表books不存在,请检查后再试!",0+16,"警告")elseselect books &&选取account表locate for allt(bo1.value)==allt(isbn) &&按索引查找当前所选user相关记录seekif found()thisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态endifendiftext1/2/3/4/5/6/7/8的rightclick event代码:do 快捷菜单.mprcommand6的click event代码:thisform.release5、查询—按书名对象名属性与属性值说明Form1 按书名查询界面Combo1 书名Grid1 查询结果Command1 查询按钮Form1的init event代码:with thisform.grid1.columncount=9.column1.header1.caption="Isbn".column2.header1.caption="书名".column3.header1.caption="作者".column4.header1.caption="出版社".column5.header1.caption="单价".column6.header1.caption="类别".column7.header1.caption="购买日期".column8.header1.caption="简介".column9.header1.caption="借阅状态".column1.width=50.column3.width=50.column2.width=80.column4.width=100.column5.width=50.column7.width=50.column8.width=100if bo1.value=="".recordsource="books"else.recordsource="temp"endif.recordsourcetype=1.column1.header1.caption="Isbn".column2.header1.caption="书名".column3.header1.caption="作者".column4.header1.caption="出版社".column5.header1.caption="单价".column6.header1.caption="类别".column7.header1.caption="购买日期".column8.header1.caption="简介".column9.header1.caption="借阅状态".refreshendwithcommand1的click event代码:sele bookslocate for allt(bo1.value)=allt(书名)if found()messagebox("查找成功",0+48,"提示")go topsele * from books where allt(bo1.value)==allt(书名) into cursor tempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endif6、查询—按任意条件对象名属性与属性值说明Form1 按任意条件查询界面Combo1 选择字段Grid1 查询结果Command1 查询按钮Command2 退出按钮Text1 字段内容Form1的init event代码:with thisform.grid1.columncount=9.column1.header1.caption="Isbn".column2.header1.caption="书名".column3.header1.caption="作者".column4.header1.caption="出版社".column5.header1.caption="单价".column6.header1.caption="类别".column7.header1.caption="购买日期".column8.header1.caption="简介".column9.header1.caption="借阅状态".column1.width=50.column3.width=50.column2.width=80.column4.width=100.column5.width=50.column7.width=50.column8.width=100if bo1.value=="".recordsource="books"else.recordsource="temp"endif.recordsourcetype=1.column1.header1.caption="Isbn".column2.header1.caption="书名".column3.header1.caption="作者".column4.header1.caption="出版社".column5.header1.caption="单价".column6.header1.caption="类别".column7.header1.caption="购买日期".column8.header1.caption="简介".column9.header1.caption="借阅状态".refreshEndwithCombo1的lostfocus event代码:if bo1.value=="单价"thisform.Text1.value=0elseif bo1.value=="购买日期"thisform.Text1.value={}else-if bo1.value=="借阅状态"thisform.Text1.value=.F.elsethisform.Text1.value=""endifendifendifCommand1的click event代码:if bo1.value=="isbn"if thisform.Text1.value==""messagebox("你没有选择要查找的内容",0+16,"提示")else&&sele bookslocate for allt(thisform.text1.value)=allt(isbn)if found()messagebox("查找成功",0+48,"提示")go topsele * from books where allt(thisform.Text1.value)==allt(isbn) into cursor tempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endifendifendifif bo1.value=="书名"if thisform.Text1.value==""messagebox("你没有选择要查找的内容",0+16,"提示")else&&sele bookslocate for allt(thisform.text1.value)=allt(书名)if found()messagebox("查找成功",0+48,"提示")go topsele * from books where allt(thisform.Text1.value)==allt(书名) into cursor tempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endifendifendifif bo1.value=="作者"if thisform.Text1.value==""messagebox("你没有选择要查找的内容",0+16,"提示")else&&sele bookslocate for allt(thisform.text1.value)=allt(作者)if found()messagebox("查找成功",0+48,"提示")go topsele * from books where allt(thisform.Text1.value)==allt(作者) into cursor tempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endifendifendifif bo1.value=="出版社"if thisform.Text1.value==""messagebox("你没有选择要查找的内容",0+16,"提示")else&&sele bookslocate for allt(thisform.text1.value)=allt(出版社)if found()messagebox("查找成功",0+48,"提示")go topsele * from books where allt(thisform.Text1.value)==allt(出版社) into cursor tempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endifendifendifif bo1.value=="单价"if thisform.Text1.value==0messagebox("你没有选择要查找的内容",0+16,"提示")else&&thisform.Text1.value=0 &&奖框框变为数值型的;&&sele bookslocate for thisform.text1.value=单价if found()messagebox("查找成功",0+48,"提示")go topsele * from books where thisform.Text1.value==单价into cursor tempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endifendifendifif bo1.value=="类别"if thisform.Text1.value==""messagebox("你没有选择要查找的内容",0+16,"提示")else&&sele bookslocate for allt(thisform.text1.value)=allt(类别)if found()messagebox("查找成功",0+48,"提示")go topsele * from books where allt(thisform.Text1.value)==allt(类别) into cursortempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endifendifendifif bo1.value=="购买日期"&&sele books&&thisform.Text1.value={}locate for thisform.text1.value=购买日期if found()messagebox("查找成功",0+48,"提示")go topsele * from books where thisform.Text1.value==购买日期into cursor tempthisform.refreshthisform.initelsemessagebox("查找失败,没有相关信息",0+48,"提示")endifendifif bo1.value=="借阅状态"&&sele bookslocate for thisform.text1.value=借阅状态if found()messagebox("查找成功",0+48,"提示")go topsele * from books where thisform.Text1.value==借阅状态into cursor tempthisform.refreshthisform.initelsemessagebox("对不起,没有相关内容",0+48,"提示")endifendifCommand2的click event代码:thisform.releaseText1的click event代码:sele * from books into cursor temp &&占击时使表中的数据转入另一表中,因为如不转入第一次查询后,再查的话,相当于第二次是在第一次的基础上再查的;这样有可能找不到with thisform.grid1.recordsource="books".refreshEndwithText1的rightclick event代码:do 快捷菜单.MPR7、修改—按ISBN对象名属性与属性值说明Form1 修改-按ISBN Combo1 选择ISBN Command1 确定按钮Text1 书名Text2 出版社Text3 类别Text4 简介Text5 作者Text6 单价Text7 购买日期Text8 借阅状态Command2 首记录Command3 前一条记录Command4 后一条记录Command5 尾记录Command6 修改Command7 退出Command8 放弃Form1的init event代码:thisform.Text6.enabled=.F.thisform.Text7.enabled=.F.thisform.Text8.enabled=.F.Command1的click event代码:if select("books")=0 &&检查数据表是否打开messagebox("数据表books不存在,请检查后再试!",0+16,"警告")elseselect books &&选取account表locate for allt(bo1.value)==allt(isbn)if found()thisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态endifendif&&bo1.ADDITEM(temp.学号) skipif eof()mand4.enabled=.F.mand3.enabled=.T.elseskip -2if bof()mand3.enabled=.F.mand4.enabled=.T.elsemand4.enabled=.T.mand3.enabled=.T.endifendifText1/2/3/4/5/6/7/8的rightclick event代码:do 快捷菜单.MPRCommand2的click event代码:go topthisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnmand3.enabled=.F.mand4.enabled=.T.Command3的click event代码:if !bof()skip -1thisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnelsemand3.enabled=.F.endifif eof()mand4.enabled=.F.elsemand4.enabled=.T.endifCommand4的click event代码:if !eof()skipthisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnelsemand4.enabled=.F.endifif bof()mand3.enabled=.F.elsemand3.enabled=.T.endifCommand5的click event代码:go bottomthisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnmand4.enabled=.F.mand3.enabled=.T.Command6的click event代码:t1=allt(thisform.Text1.value)t2=allt(thisform.Text2.value)t3=allt(thisform.Text3.value)t4=allt(thisform.Text4.value)t5=allt(thisform.Text5.value)t9=allt(bo1.value)if thisform.Text1.value!=" " and thisform.Text2.value!=" " and ;thisform.Text3.value!=" " and thisform.Text4.value!=" " and;thisform.Text5.value!=" "messagebox("修改成功",0+48,"修改提示")replace 书名with t1,出版社with t2,类别with t3,简介with t4,作者with t5 for t9=allt(isbn)elsemessagebox("不能有空",0+48,"修改提示") endifCommand7的click event代码:thisform.releaseCommand8的click event代码:thisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbn8、删除—按ISBN对象名属性与属性值说明Form1 删除—按ISBN界面Combo1 ISBNCommand1 确定按钮Text1 书名Text2 出版社Text3 类别Text4 简介Text5 作者Text6 单价Text7 购买日期Text8 借阅状态Command2 首记录Command3 上一条记录Command4 下一条记录Command5 尾记录Command6 删除Command7 退出Form1的load event代码:public mmCommand1的click event代码:if select("books")=0 &&检查数据表是否打开messagebox("数据表books不存在,请检查后再试!",0+16,"警告")elseselect books &&选取account表locate for allt(bo1.value)==allt(isbn)if found()mm=recno()thisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态endifendif&&bo1.ADDITEM(temp.学号)skipif eof()mand4.enabled=.F.mand3.enabled=.T.elseskip -2if bof()mand3.enabled=.F.mand4.enabled=.T.elsemand4.enabled=.T.mand3.enabled=.T.endifendifText1/2/3/4/5/6/7/8的rightclick event代码:do 快捷菜单.MPRComandante2的click event代码:go topthisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnmm=recno()mand3.enabled=.F.mand4.enabled=.T. Comandante3的click event代码:if !bof()skip -1thisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnmm=recno()elsemand3.enabled=.F.endifif eof()mand4.enabled=.F.elsemand4.enabled=.T.endifComandante4的click event代码:if !eof()skipthisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnmm=recno()elsemand4.enabled=.F.endifif bof()mand3.enabled=.F.elsemand3.enabled=.T.endifComandante5的click event代码:go bottomthisform.Text1.value=书名thisform.Text2.value=出版社thisform.Text3.value=类别thisform.Text4.value=简介thisform.Text5.value=作者thisform.Text6.value=单价thisform.Text7.value=购买日期thisform.Text8.value=借阅状态bo1.value=isbnmm=recno()mand4.enabled=.F.mand3.enabled=.T.Comandante6的click event代码:sele booksgo mmmb=messagebox("确定要删除吗?",1+64,"提示") if mb==1messagebox("删除成功",0,"提示")deletepackendifComandante7的click event代码:thisform.release9、删除—按任意条件对象名属性与属性值说明Form1 按任意条件删除界面Optiongroup1 选项字段按钮组Option1 ISBNOption2 书名Option3 作者Option4 出版社Option5 单价Option6 类别Option7 购买日期Option8 借阅状态Text1 字段内容Grid1 删除显示Command1 删除Command2 退出Command3 确定Form1的init event代码:with thisform.grid1.columncount=9.column1.header1.caption="Isbn".column2.header1.caption="书名".column3.header1.caption="作者".column4.header1.caption="出版社" .column5.header1.caption="单价".column6.header1.caption="借阅状态" .column7.header1.caption="类别".column8.header1.caption="简介".column9.header1.caption="购买日期" .column1.width=50.column3.width=50.column2.width=80.column4.width=100.column5.width=50.column7.width=50.column8.width=100&&if allt(thisform.text1.value)==""&&.recordsource="books"&&else.recordsource="temp"&&endif.recordsourcetype=1.column1.controlsource="Isbn".column2.controlsource="书名".column3.controlsource="作者".column4.controlsource="出版社".column5.controlsource="单价".column6.controlsource="借阅状态" .column7.controlsource="类别".column8.controlsource="简介".column9.controlsource="购买日期" .refreshendwithpublic hhOptiongroup1的init event代码:with thisform.grid1.columncount=9.column1.header1.caption="Isbn".column2.header1.caption="书名".column3.header1.caption="作者".column4.header1.caption="出版社" .column5.header1.caption="单价".column6.header1.caption="类别".column7.header1.caption="购买日期" .column8.header1.caption="简介".column9.header1.caption="借阅状态" .column1.width=50.column6.width=50.column3.width=50.column2.width=80.column4.width=100.column5.width=50.column7.width=50.column8.width=100if allt(thisform.text1.value)=="".recordsource="books"else.recordsource="temp"endif.recordsourcetype=1.column1.header1.caption="Isbn".column2.header1.caption="书名".column3.header1.caption="作者".column4.header1.caption="出版社".column5.header1.caption="单价".column6.header1.caption="类别".column7.header1.caption="购买日期".column8.header1.caption="简介".column9.header1.caption="借阅状态".refreshendwithText1的mousedown event代码:LPARAMETERS nButton, nShift, nXCoord, nYCoordif thisform.optiongroup1.option5.value==1thisform.Text1.value=0elseif thisform.optiongroup1.option7.value==1thisform.Text1.value={}elseif thisform.optiongroup1.option8.value==1thisform.Text1.value=.F.elsethisform.Text1.value=""endifendifendifwith thisform.grid1.recordsource="books"endwithText1的rightclick event代码:do 快捷菜单.MPRGrid1的rightclick event代码:do 快捷菜单.MPRCommand1的click event代码:sele booksgo hhmb=messagebox("确定要删除吗?",1+64,"提示") if mb==1messagebox("删除成功",0,"提示")deletepackendifCommand2的click event代码:thisform.releaseCommand3的click event代码:if thisform.optiongroup1.option1.value==1locate for allt(Isbn)=allt(thisform.text1.value)if found()hh=recno()go topsele * from books where allt(Isbn)==allt(thisform.text1.value) into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifif thisform.optiongroup1.option2.value==1locate for ALLT(书名)=allt(thisform.text1.value)if found()hh=recno()go topsele * from books where ALLT(书名)==allt(thisform.text1.value) into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifif thisform.optiongroup1.option3.value==1locate for allt(作者)=allt(thisform.text1.value)if found()hh=recno()go topsele * from books where allt(作者)==allt(thisform.text1.value) into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifif thisform.optiongroup1.option4.value==1locate for allt(出版社)=allt(thisform.text1.value)if found()hh=recno()go topsele * from books where allt(出版社)==allt(thisform.text1.value) into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifif thisform.optiongroup1.option5.value==1locate for 单价==thisform.text1.valueif found()hh=recno()go topsele * from books where 单价==thisform.text1.value into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifif thisform.optiongroup1.option6.value==1locate for allt(类别)==allt(thisform.text1.value)if found()hh=recno()go topsele * from books where allt(类别)==allt(thisform.text1.value) into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifif thisform.optiongroup1.option7.value==1locate for 购买日期=thisform.text1.valueif found()hh=recno()go topsele * from books where 购买日期==thisform.text1.value into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifif thisform.optiongroup1.option8.value==1locate for 借阅状态=thisform.text1.valueif found()hh=recno()go topsele * from books where 借阅状态==thisform.text1.value into cursor tempthisform.refreshelsemessagebox("没有此信息!",0+48,"提示")endifendifthisform.init9、入库对象名属性与属性值说明Form1 图书入库界面Text1 ISBNEdit1 书名Text4 购买日期Text2 作者Edit2 类别Edit3 出版社Text3 单价Edit4 简介Grid1 入库书籍表Command1 确定Command2 退出Form1的init event代码:。

相关文档
最新文档