ImageVerifierCode 换一换
格式:DOCX , 页数:78 ,大小:877.15KB ,
资源ID:21943852      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21943852.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实例图书管理信息系统的设计与开发Word格式文档下载.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实例图书管理信息系统的设计与开发Word格式文档下载.docx

1、该属性决定是否弹出密码输入框。默认值是True,即弹出密码输入框,用手工输入密码。如果应用程序使用的数据库有密码,并且在上面的“连接”页面中输入了密码且选中“允许保存密码”,那么此属性社顶为False后,应用程序在运行时将不会弹出密码输入框了。数据库设置了密码,并在此选中了“允许保存密码”,LoginPrompt属性设为False .程序在运行时就不会弹出密码输入框了。3.2 图书管理信息系统的实现3.2.1 系统总体设计3.2.2 系统数据库设计(1)Access 数据库本系统采用Microsoft公司的Access文件数据库来存放数据。一个Access数据文件中可以包含多个数据表。图书信息

2、管理系统Access数据文件的名字是:BookManage.mdb三个数据表的名字:1. Book2. Reader3. Lend 用MS-Access创建数据表,如下图所示保存数据文件的路径:C:Program Files BorlandDelphi7 ProjectsDataBase自己建立的文件夹夹数据文件名点击“创建”按钮单击 改为Memo1,Memo为保留字字字!Reader 表Lend 表 给数据文件设置密码从MS-Access的菜单“工具”|“安全”|“设置数据库密码”设置密码:(2)SQL Server2000 数据库 数据库的四张数据表:表1 图书数据表Book表2 读者数据

3、表 - Reader 表3 借阅数据表 Lend表4 用户数据表 User(登录用)列名数据类型长度允许为空说明UserNameVarchar10操作员名称UserPow操作员密码UserLev2操作员级别在该数据表中先保存一条记录,作为系统启动后的初始用户和密码。例如:3.2.3 工程窗体设计共有5个窗体。这5个窗体的Name属性及其单元文件如下:序号Name属性单元文件名Caption属性1MainForm Main.pas图书管理系统BookForm Book.pas图书管理3ReaderForm Reader.pas读者管理4LendForm Lend.pas借阅管理5QueryFor

4、m InfoQuery.pas信息查询 工程文件名 BookManage.dpr注意:主窗口要Use其余4个窗口的单元文件。即在主窗口的单元文件中加入 uses Book,Reader,Lend,InfoQuery; 设计5个空白窗体,并按照上面表格中的名称命名:记住:主窗口(MainForm)要Use其余4个窗口的单元文件3.2.4 主窗体设计主窗体的代码部分:在主窗体创建时,要得到应用程序的当前路径并设置时间格式,为此,在主窗口单元文件“Main.pas”的变量定义处定义两个变量:Mypath、MypathW(数据库文件的密码)。具体程序如下所示:unit Main;public Publ

5、ic declarations end;var MainForm: TMainForm; implementationuses Book, Reader, Lend, InfoQuery;主窗口要用到另外4个窗口$R *.dfmprocedure TMainForm.BitBtn1Click(Sender: TObject);begin BookForm.Show;显示“图书管理”窗口end;procedure TMainForm.BitBtn2Click(Sender:显示“读者管理”窗口 ReaderForm.Show;procedure TMainForm.BitBtn3Click(Se

6、nder: LendForm.Show;显示“借阅管理”窗口procedure TMainForm.BitBtn4Click(Sender:关闭主窗口 Close;procedure TMainForm.BitBtn5Click(Sender:这是第2页“信息查询”页上的“图书查询”按钮 QueryForm.Show;显示“信息查询窗口”end.3.2.5 数据模块设计建立数据模块 Data Module 用来存放ADO组件对象,便于各窗体统一使用ADO组件对象访问数据库,同时也使得对数据库文件的修改和维护变得简单。Name属性:DataModuleADO打开BookManege.dpr工程文

7、件从菜单 File|New|Other 点选DataModule.放置3个ADO组件对象单元文件名:DataModule.pas保存该单元文件DataModule.pas后,调出其余4个窗口,Use该DataModule.pas。文件名:DataModule.pas, 是工程文件BookManage.mdb的一个Unit成员。现在,该工程文件有如下成员:DataModuleADO的代码:unit DataModule;interfaceusesWindows,SysUtils, Classes, DB, ADODB, DBTables;type TDataModuleADO = class(T

8、DataModule) ADOConnection1: TADOConnection; ADOTable1: TADOTable; ADOQuery1: TADOQuery; private Private declarations public DataModuleADO: TDataModuleADO;implementation仅此一项是通过菜单中的“Use Unit” 手工加上去的.uses Main;3.2.6 图书管理窗体设计 图书管理窗体包括: 新书入库 图书管理调出先前设计好的BookForm空白窗体,放入TpageControl组件对象,按鼠标右键,选择NewPage产生2个

9、新的页面。1. 在MaxLength属性中输入10,限制书号的最大长度是10位新书入库CostEditCodeEditNameEditAuthorEditPressEditOutTimeEditButton1Button2这些组件是Additional页上的StaticText组件。它与Tlabel组件类似。区别在于StaticText显示某些状态信息图书管理窗体的代码: 在新书入库页面显示时,清空几个编辑框,并将输入焦点放在输入书号的编辑框CodeEdit上,这在新书入库页(TabSheet1)的Onshow事件的处理程序中实现:procedure TBookForm.TabSheet1Sh

10、ow(Sender: CodeEdit.SetFocus;将输入焦点放在输入书号的编辑框CodeEdit上 CodeEdit.SelectAll; NameEdit.Text := ; AuthorEdit.Text : OutTimeEdit.Text : CostEdit.Text : PressEdit.Text : Memo1.Clear; 单击按钮,将在几个编辑框中填入的数据加入到数据库中,其主要内容有:(1) 检查新书书号是否正确(2) 检查此书号是否存在,如果存在则退出入库操作(3) 将新书的数据加入到数据库中以上功能在新书入库按钮的Onclick事件的处理程序中实现,代码如下:

11、procedure TBookForm.Button1Click(Sender: if Length(CodeEdit.Text) 10 then /新书书号长度是否为10 begin MessageDlg(书号不正确,mtError,mbok,0); Exit; /书号不正确,退出入库操作 with DataModuleADO.ADOQuery1 do /检查新书的书号是否已存在 SQL.Clear;SQL.Add(select Code from Book where Code =:Code);/上面这段代码检查新书的书号是否已经存在 Parameters.ParamByName().Va

12、lue :=CodeEdit.Text; Open; if RecordCount 0 then /此书已经存在MessageDlg(书号+CodeEdit.Text+已经存在/下面的代码将新书的数据插入到图书数据表Book中 try with DataModuleADO.ADOQuery1 doinsert into book(Code,Name,Author,Press,OutDate,Cost,Memo1)+values(:Code,:Name,:Author,:Press,:OutDate,:Cost,:Memo1)Parameters.ParamByName().value := N

13、ame NameEdit.Text;AuthorAuthorEdit.Text;PressPressEdit.Text;Memo1Memo1.Text; tryOutDateStrToDate(OutTimeEdit.Text); Except参数设置错误tryCost= StrToFloat(CostEdit.Text);价格 ExecSQL;要提示的内容 TabSheet1Show(Sender);入库出错该提示框的种类 关于“MessageDlg”函数:显示提示信息对话框,函数的原型声明:funcation MessageDlg(const Msg:string; Atype:TmsgD

14、lgType; Abuttons:TMsgDlgButtons; HelpCtx:Longint): Word默认值设置为0提示框内按钮的种类MessageDlg函数内的参数传入值及函数返回值意义见下表:AType参数值的内容 AType 参数值 意 义 mtWaring警告信息显示窗口 mtError错误信息显示窗口 MtInformation帮助信息窗口 mtConfirmation确认信息显示窗口 MtCustom自定义信息窗口AButtons参数值内容及函数返回值 AButton参数值 返 回 值mbYes加上“是”按钮mrYesmbNo加上“否”按钮mrNombOk加上“确定”按钮m

15、rOkmbCancel加上“取消”按钮mrCancelmbHelp加上“帮助”按钮mrHelpmbAbort加上“终止”按钮mrAbortmbRetry加上“重试”按钮mrRetrymbIgnore加上“忽略”按钮mrIgnorembAll加上“全部”按钮mrAll ShowMessage:这是Delphi提供的简易信息提示窗口。这个过程只有一个字符串参数,你可以把要显示出来的字符串放到这个字符串参数内就可以了:如ShowMessage(“复制成功!”); MessageBox:这是Win32 API 内的函数,作用是建立消息框窗体。该函数的格式:int MessageBox( HWND Hw

16、nd, /信息窗口所有者的窗口 handle LPCTSTR lpText, /信息窗口内的信息字符串 LPCTSTR lpCaption /信息窗口的标题字符串 UNIT uType /信息窗口的类型 );第一个参数所有者的窗口handle,如果没有,就设置成NULL;第二个及第三个参数的类型是PChar ,者两个字符串就是你要显示的字符串信息;最后一个参数则是信息窗口的类型。如 MessageBox(Form1.Handle, 提示信息窗口! ,Dialog,MB_OK);它的功能与MessageDlg函数相同。建议使用该函数作为信息提示窗口,因为它所声明的类型都是Object Pasca

17、l 的标准类型,而且它的组合定义也比较简单。2. 图书管理图书管理页完成对数据库中图书数据的修改。DataSet属性:DataModuleADO.ADOTable1图书管理页的界面设计这些都是数据感知组件,必须指定DataSource属性:DataSource1StaticText组件这些都是DBEdit组件每个组件的Name如框内所示ComboBox1初始化:在图书管理页显示时,将数据库中所有图书的书号插入到ComboBox1中,供用户选择。这在TabSheet2(图书管理页)的Onshow事件的处理程序中实现:procedure TBookForm.TabSheet2Show(Sender

18、:图书管理窗体的第2页: i : integer; ComboBox1.Items.Clear;执行查询功能 SQL.Add(select Code from book Book 数据表 First; for i:=0 to RecordCount-1 do begin ComboBox1.Items.Add(FieldbyName().AsString); Next;将所有图书号都加入到ComboBox1框中用户选择要处理的图书号有两种办法:1) 从ComboBox1框的下拉菜单中选择书号。上面的过程已经把库中所有的图书号都列出来了2) 在ComboBox1中输入需要修改的书号。当Combo

19、Box1编辑框中的书号发生变化时,即触发ComboBox1的OnChange 事件,在这个事件中,将该书号的图书信息在窗口所列的DBEdit组件中显示出来:procedure TBookForm.ComboBox1Change(Sender: if Length(ComboBox1.Text) = 10 then with DataModuleADO.ADOTable1 do TableName:=book在窗口的DBEdit 组件中分别列出各字段信息 DBOutDate.DataField: DBName.DataField: DBAuthor.DataField: DBPress.Data

20、Field: DBCost.DataField: DBMemo.DataField: Active:=True; /激活book数据表 Locate(code,ComboBox1.Text, );在数据库中查找ComboBox1中所列出的书号“Code” Edit; except数据操作出错采用手工输入书号的方法如果用户在ComboBox1的编辑框中输入需要修改的图书的书号,输入完后,按下回车键,则实现ComboBox1的Change事件,实现上面那段程序的功能。代码如下:procedure TBookForm.ComboBox1KeyDown(Sender: TObject; var Key

21、: Word;Shift: TShiftState);13是ASCII码.(键盘编码)表示的意义:回车符.光标回到最左边的位置.另:ASCII码中的10是换行符. if Key = 13 then ComboBox1Change(Sender);保存数据:修改完数据后按下“保存”按钮,把数据保存下来。“保存”按钮procedure TBookForm.Button3Click(Sender:确认对“Book”数据表的修改实现“保存”。 DataModuleADO.ADOTable1.Post; DataModuleADO.ADOTable1.Active:=False;保存出错Book数据表不再被激活 ComboBox1.SetFocus;3.2.7 读者管理模块读者管理模块要实现2个功能:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1