图书管理系统.doc_第1页
图书管理系统.doc_第2页
图书管理系统.doc_第3页
图书管理系统.doc_第4页
图书管理系统.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

此文档收集于网络,如有侵权,请联系网站删除图书管理系统图书资料的管理是高校图书馆都必须切实面对的工作,但一直以来人们使用传统的人工方式管理图书资料,这种管理方式存在着许多缺点,如:效率低、保密性差且较为烦琐,另外随着图书资料数量的增加,其工作量也将大大增加,这必然增加图书资料管理者的工作量和劳动强度,这将给图书资料信息的查找、更新和维护都带来了很多困难。经过我们详细的调查,目前我国各类高等院校中有相当一部分单位图书资料管理还停留在人工管理的基础上,尤其是中、小学的图书资料的管理更是如此,这样的管理机制已经不能适应时代的发展,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,这种传统的手工管理方法必然被以计算机为基础的信息管理方法所取代。 图书资料管理作为计算机应用的一个分支,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高图书资料管理的效率。因此,开发一套能够为用户提供充足的信息和快捷的查询手段的图书资料管理系统,将是非常必要的,也是十分及时的。1 基本要求图书馆管理系统实现图书馆日常管理的数字化,提供图书馆的日常管理功能(包括图书编目、图书流通等)和流通管理、图书信息检索等功能。图书馆系统基本需求如下: (1)提供多种检索查询方式,可以进行简单的关键字、书名、作者、出版社、关键字、分类等多种细目进行详细查询,查询结果应便捷直观。(2)读者可以查询检索书籍及书籍详细信息,发表、查看图书评论;可以查询自己的借阅状态,预约和续借图书。(2)能够处理借阅者的借阅和还书、续借请求,进行图书超期、丢失、污损等赔偿、处罚处理。(3)可以对系统数据进行维护,如增加、删除、更新书目,增加删除、修改图书信息。(4)能够进行读者管理,包括增加、删除和修改读者账户。(5)在查看图书(或读者)档案时,在同一界面,同时显示图书(或读者)的历史借阅记录。借书与还书时,显示读者(或者图书)当前借阅状态,为图书管理提供参考。(6)注销读者时删除其借阅记录。(7)借阅权限采用分类限制,定义各类读者的借书数量、借书期限、有效期限等。 (8)可以发布公告、通知,介绍图书馆活动、培训信息等。(9)提供统计查询功能,如借阅信息统计,当前借阅查询,历史借阅查询,图书丢失清单等。2 分析设计2.1 需求分析高等院校的图书管理涉及图书信息、系统用户信息、读者信息、图书借阅信息等多种数据管理。从管理的角度出发可将图书管理分为3类:图书信息管理、系统用户管理和读者数据管理。图书信息管理包括图书征订、编目、典藏、借还和查询操作,系统用户管理包括系统用户类别和用户数据管理,读者数据管理包括读者类别管理和读者个人数据的录入、修改、删除。 典型的高校图书管理系统主要应具有以下功能: 图书征订:包括图书征订数据的录入、修改、删除等功能。 图书编目:包括图书编目信息的录入、修改等功能。 图书典藏:包括新书分配、库室调配等功能。 图书流通:包括图书借阅、续借,图书返还,图书书目查询等功能。 系统用户管理:包括系统用户数据的录入、修改、删除等功能。 读者数据管理:包括读者类别管理,读者个人数据的录入、修改、删除等功能。2.1.1系统数据流图数字图书馆管理系统的参考分层数据流图如图2-1图2-13所示。图2-1 系统顶层数据流图图2-2 系统1层数据流图(1)图2-3 系统1层数据流图(2)图2-4 系统1层数据流图(3)图2-5 系统2层数据流图(1)图2-6 系统2层数据流图(2)图2-7 系统2层数据流图(3)图2-8 系统2层数据流图(3)图2-9 系统2层数据流图(4) 图2-10 系统2层数据流图(5) 图2-11 系统2层数据流图(6) 图2-12 系统2层数据流图(7) 图2-13 系统2层数据流图(8)2.1.2 系统数据字典根据图1图13所示的数据流图确定系统数据流描述、数据存储描述、数据项描述及处理过程描述。(1)数据流描述数字图书馆管理系统包含的主要数据流包括:读者登录信息(借书证号与密码)、借阅信息、图书信息、还书信息等。(2)数据存储描述数字图书馆管理系统的主要数据存储包括:用户信息、读者信息、图书信息、借阅信息、还书信息、预约信息、书籍评论、收款记录等。(3)数据项描述数据项是不可再分的数据单位。数字图书馆系统包含的数据项有:借书证号、姓名、图书编号、图书名称等.(4)处理过程描述数字图书馆系统包含的主要处理过程包括:用户与读者登录、借书、还书、预约等。2.2概念结构设计在数字图书馆管理系统中,由于同一种书图书馆可能会购买多册,图书的借阅、续借、归还实际上是针对每册书进行的,因此在进行概念结构设计时,可将图书信息拆分为两部分,其中一部分包含图书的基本信息(图书编号、图书类别、书名、作者、出版社、出版日期、价格等),另一部分保存该图书每册书的条形码编号和状态信息(在库、借出等)。这两部分之间的关系是1对多关系,每一本书的图书编号是惟一的。数字图书馆管理系统部分E-R图的参考方案如图2-14图2-25所示。合并后的总E-R图如图2-26所示。图2-14 局部E-R图(1)图2-15 局部E-R图(2)图2-16 局部E-R图(3) 图2-17 局部E-R图(4) 图2-18 局部E-R图(4)图2-19 局部E-R图(5)图2-20 局部E-R图(5)图2-21 局部E-R图(6)图2-22 局部E-R图(8)图2-23 局部E-R图(9)图2-24 局部E-R图(10)图2-25 局部E-R图(11)图2-26 全局E-R图2.3 逻辑结构设计逻辑结构设计阶段按照E-R图转换为关系模式的规则将E-R图中的实体、实体属性和实体之间的联系转化为关系模式的对应组成部分。2.3.1 将实体转化为关系模型。根据图1-24所示的基本E-R图,将其中的实体转化为如下关系,关系的码用下横线标出。l 将操作权限实体转换为操作权限关系:(权限编码、权限名称)。l 将用户类别实体转换为用户类别关系:(用户类别编码、用户类别名称)。l 将用户实体转换为用户关系:(用户编号、用户名、姓名、性别、单位、身份证号、联系电话、Email地址、密码)。l 将读者类别实体转换为读者类别关系:(读者类别编码、类别名称、借阅期限、可借阅总数、可续借次数、续借期限、超期罚金)。l 将读者实体转换为读者关系:(借书证号、注册日期、到期日期、状态、已借阅数量、可借阅数量、预约图书数,姓名、性别、单位、身份证号、联系电话、Email地址、密码)。l 将图书类别实体转换为图书类别关系:(图书类别编码、图书类别名称)l 将图书实体转换为图书关系:(图书编号、图书名称、索书号、作者、出版社、版次、出版日期、主题词、简介、附件、ISBN号、单价、馆藏数量、借出数、借出次数、所在书室、所在书架)。l 将图书明细信息转换为图书明细信息关系:(条形码号、图书状态)l 将系统公告实体转换为系统公告关系:(公告编号、公告内容、公告日期、附件)。2.3.2 将联系转化为关系模型。根据图1-24所示的数字图书管理系统的基本E-R图,将其中的1:n联系并入n端关系模式,m:n联系转化为一个关系模式,关系的码用下横线标出。l 用户关系模式修改为:(用户编号、姓名、性别、单位、身份证号、联系电话、Email地址、密码、用户类别编码)。l 图书关系模式修改为:(图书编号、图书名称、索书号,作者、出版社、版次、出版日期、主题词、简介、附件、ISBN号、单价、馆藏数量、借出数、借出次数、所在书室、所在书架、图书类别编码)l 图书明细信息关系模式修改为:(条形码号、图书状态、图书编号)l 将读者“借阅”图书联系转化为一个关系模式:借阅记录(借阅流水号、借阅日期,到期日期、是否续借、续借次数、借书证号、条形码号)。l 将读者“归还”图书联系转化为一个关系模式:还书记录(还书流水号、借阅日期、到期日期、还书日期、罚款情况,支付情况、借书证号、条形码号)。l 将读者“赔偿”图书联系转化为一个关系模式:收款记录(收款流水号、收款日期、原因、金额、借书证号、条形码号)。l 将某类用户“拥有”操作权限联系转化为一个关系模式:用户类别权限(用户类别权限编码、用户类别编码、权限编码)。l 将读者“评论”图书联系转化为一个关系模式:书籍评论(评论流水号、评论内容、发表日期、图书编号、借书证号)。l 将读者“预约”图书联系转化为一个关系模式:预约图书(预约流水号、预约日期、图书编号、借书证号)2.3.3 设计用户子模式。为了方便不同用户使用,从效率、安全、方便角度考虑,可考虑建立如下子模式:l 读者基本信息(借书证号、姓名、性别、单位、联系电话、Email地址,读者类别)。l 读者状态(借书证号、姓名、已借阅数量、可借阅数量、预约图书数、读者类别)。l 读者当前借阅状态(图书编号、图书名称、借阅日期、到期日期、状态)。l 读者历史状态(图书编号、图书名称、借阅日期、到期日期、还书日期、状态、罚款情况、支付情况)。l 图书信息(图书编号、图书名称、索书号,作者、出版社、版次、出版日期、ISBN号、单价、馆藏数量、借出数、在库数、所在书室、所在书架、图书类别、简介、主题词)。l 借阅信息(图书编号、图书名称、馆藏数量、借出数、在库数)。l 当前借阅(图书编号、图书名称、借书证号、姓名、借阅日期、到期日期、状态)l 逾期图书(图书编号、借书证号、借阅日期、到期日期、状态)l 丢失图书清单(图书编号、图书名称、索书号,作者、出版社、版次、出版日期、ISBN号)。l 收款记录(图书编号、图书名称、原因、金额、收款日期)。l 图书破损清单(图书编号、图书名称、索书号,作者、出版社、版次、出版日期、ISBN号)l 图书评论(图书编号、图书名称、读者姓名、评论内容、时间)。l 读者发表书评(借书证号、图书名称、索书号,作者、出版社、版次、出版日期、评论内容).2.3.4 物理结构设计物理结构设计的目的是为一个给定的逻辑数据模型选取一个最适合应用环境的物理结构。在进行物理结构设计时应认真分析和思考各个表之间的关系,合理设计和实施数据完整性原则:l 给每个表实施主键及外键约束。l 由有关数据表在常用查询列上建立索引,以加快数据检索速度,例如以作者名称、出版社等为图书信息表建立索引l 设定缺省约束。如性别。l 设置非空约束。如图书信息表的中的书名。l 实施CHECK约束。如ISBN类别表中的可借数量小于馆藏数量。l 实施规则。如身份证号码必须为15位或18位。数字图书管理系统的参考数据表结构如表2-12-15所示, 表间关系如图2-27所示。表2-1 操作权限表(t_Right)字段名称数据类型长度说明备注RCodechar2权限编码主键RNamevarchar20权限名称表2-2 用户类别表(t_User_Kind)字段名称数据类型长度说明备注UKCodechar2用户类别编码主键UKNamevarchar20用户类别名称表2-3 用户表(t_User)字段名称数据类型长度说明备注UCodechar11用户编码主键(YYYYMMDDXXX)UNamevarchar10用户名UserNamevarchar20姓名USexchar1性别0-男 1-女UDepartmentvarchar50单位UIDNumberchar18身份证号UPhonevarchar20联系电话UEmailvarchar50Email地址UPasswordvarchar10密码UKCodechar2用户类别编码外键表2-4 读者类别表(t_Reader_Kind)字段名称数据类型长度说明备注RKCodechar2读者类别编码主键RKNamevarchar20读者类别名称RKBPeriodsmallint2借阅期限天BKBTotalsmallint2可借阅总数BKRTimessmallint2可续借次数BKRPeriodsmallint2续借期限BKOPenaltydecimal3,1超期罚金元/天表2-5 读者表(t_Reader)字段名称数据类型长度说明备注RLCNumberchar11借书证号主键(YYYYMMDDXXX)RRDatesmalldatetime4注册日期RMDatesmalldatetime4到期日期RStatechar1状态正常、锁定RBNumersmallint2已借阅数量RLNumbersmallint2可借阅数量RRNumbersmallint2预约图书数ReaderNamevarchar20姓名RSexchar1性别0-男 1-女RDepartmentvarchar50单位RIDNumberchar18身份证号RPhonevarchar20联系电话REmailvarchar50Email地址RPasswordvarchar10密码表2-6 图书类别表(t_Book_Kind)字段名称数据类型长度说明备注BKCodevarchar10图书类别编码主键(中图分类号)BKNamevarchar40图书类别名称表2-7 图书表(t_Book)字段名称数据类型长度说明备注BCodechar11图书编号主键(YYYYMMDDXXX)BNamevarchar50图书名称BCNumbervarchar12索书号BANamevarchar30作者索引字段BPressvarchar50出版社索引字段BVersionsmallint2版次BPDatesmalldatetime4出版日期BSWordvarchar30主题词BBIntroductionvarchar200简介BAttachmentvarchar20附件BISBNchar13ISBN号BPricedecimal5,1单价BTotalsmallint2馆藏数量BLNumbersmallint2借出数BLTimessmallint2借出次数BKCodevarchar10图书类别编码外键表2-8 图书明细表(t_Book_Detail)字段名称数据类型长度说明备注BDBarCodechar8条形码号BLStatechar1图书状态0-在库可借 1-借出 2-库本 3-阅览室BRoomvarchar20所在书室BShelfvarchar10所在书架BCodechar11图书编号外键表2-9 系统公告表(t_System_Bulletin)字段名称数据类型长度说明备注SBCodevarchar10公告编号YYYYMMDDXX主键SBtilevarchar50公告标题SBContentvarchar1000公告内容SBDatesmalldatetime10公告日期SBAttachmentvarchar100附件外部路径表2-10 借阅记录(t_Lending_Record)字段名称数据类型长度说明备注LRSNumberchar11借阅流水号主键(YYYYMMDDXXX)LRLDatesmalldatetime4借阅日期LRMDatesmalldatetime4到期日期LRIsRenewchar1是否续借Y/NLRRTimessmallint2续借次数RLCNumberchar11借书证号外键BDBarCodechar8条形码号外键表2-11 还书记录(t_Returning_Book _Record)字段名称数据类型长度说明备注RBRNumberchar11还书流水号主键(YYYYMMDDXXX)LRLDatesmalldatetime4借阅日期LRMDatesmalldatetime4到期日期RBRDatesmalldatetime4还书日期RBRPenaltydecimal5,1罚款情况RBRIsPaymentchar1支付情况Y/NRLCNumberchar11借书证号外键BDBarCodechar8条形码号外键表2-12 收款记录 (t_Collect_Record)字段名称数据类型长度说明备注CRumberchar10收款流水号主键(YYYYMMDDXX)CRDatesmalldatetime4收款日期CRReasonvarchar50原因CRAmountdecimal5,1金额RLCNumberchar11借书证号外键BDBarCodechar8条形码号外键表2-13 用户权限 (t_User_Kind_Right)字段名称数据类型长度说明备注UKRCodechar2用户权限编码主键UKCodechar11用户编码外键RCodechar2权限编码外键表2-14 书籍评论 (t_Book_Reviews)字段名称数据类型长度说明备注BRNumberchar10评论流水号主键(YYYYMMDDXX)BRContentvarchar200评论内容BRDatesmalldatetime4发表日期BCodechar11图书编号外键RLCNumberchar11借书证号外键表2-15 预约图书 (t_Bespeaking_Books)字段名称数据类型长度说明备注BBNumberchar11预约流水号主键(YYYYMMDDXXX)BBDatesmalldatetime4预约日期BCodechar11图书编号外键RLCNumberchar11借书证号外键图2-27 表间关系图2.3.5 功能设计。根据系统功能,整个论坛分为前台操作和后台管理两大子系统。l 前台操作子系统前台操作子系统主要提供图书检索、浏览、预约、续借、取消预约、借阅、罚款情况查询,借书证密码修改等功能。n 图书检索。n 图书信息及状态查询。n 个人信息和密码修改n 借阅状态、借阅历史查询。n 续借图书。n 预约图书、取消预约。n 发表图书评论。n 查阅查询热门图书与新到图书。l 后台管理子系统的功能:图书馆管理系统实现图书登录、读者管理、读者类别管理、借阅归还管理、罚款管理、报损登记功能。n 系统管理u 读者类别管理。u 图书类别管理。u 图书管理,增加、删除、修改图书信息及状态。u 读者管理,添加、修改和删除读者信息;n 用户管理u 用户类别管理。u 用户权限管理。u 用户信息管理n 流通管理u 图书的借、还、续借、预约、取消预约。u 图书报损登记。u 读者罚款登记和收取。n 查询统计,应提供查询统计结果的打印、导出功能。u 图书盘点,分类统计各种书的数量、借出数、在库数等。u 借阅信息统计,分别统计图书的借出记录和读者借出记录。了解借出图书排名前若干名的图书或者读者,借阅次数或借出次数。掌握热门图书和借阅频率高的读者。u 当前借阅查询,查询借阅但还没有归还的所有借阅记录。详细了解图书借阅的详情。u 历史借阅查询,查询历史借阅记录即借阅并且已经归还的图书信息u 图书丢失清单,查询丢失图书的记录u 收款记录查询,查询因借书业务所得到的现金收入详情。包括因丢失和破损做造成的罚款记录,包括缴款人和收款人以及收款时间u 图书破损清单,查询图书的破损记录。3 程序设计实例程序的开发环境为:操作系统:Windows XP Professional 开发工具:Visual Studio 2005 的ASP.NET与C#数据库平台:SQL Server 2000以上Web服务器:IIS 5.13.1 数据库访问公共类本系统设计了一个数据库访问公共类(DBCls.cs)负责管理数据库的操作。 DBCls.cs的主要代码如下:/定义连接字符串public static String ConnStr = Data Source=(local);Initial Catalog=LibMIS;Persist Security Info=True;User ID=sa;Password=;/根据连接字符串指定的方式建立数据库连接对象public SqlConnection GetConnection() SqlConnection myConn = new SqlConnection(ConnStr); return myConn; /根据输入的用户名、密码调用存储过程Pr_GetUserInfo返回用户信息,用于系统用户登录public DataTable UserInfo(string sUName, string sUPass) SqlConnection Conn = GetConnection(); DataSet ds = new DataSet(); SqlCommand Comm = Conn.CreateCommand(); Comm.CommandType = CommandType.StoredProcedure; Comm.CommandText = Pr_GetUserInfo; Comm.Parameters.Add(new SqlParameter(UName, SqlDbType.VarChar, 10); Comm.ParametersUName.Value = sUName; Comm.Parameters.Add(new SqlParameter(UPassword, SqlDbType.VarChar, 10); Comm.ParametersUPassword.Value = sUPass; SqlDataAdapter da = new SqlDataAdapter(Comm); da.Fill(ds, TM); return (ds.Tables0); /调用存储过程Pr_ChangePass修改用户密码,返回值表明是否修改成功public int ChangePass(string sUName, string sUPass) int i = 0; SqlConnection Conn = GetConnection(); DataSet ds = new DataSet(); SqlCommand Comm = Conn.CreateCommand(); Comm.CommandType = CommandType.StoredProcedure; Comm.CommandText = Pr_ChangePass; Comm.Parameters.Add(new SqlParameter(UName, SqlDbType.VarChar, 10); Comm.ParametersUName.Value = sUName; Comm.Parameters.Add(new SqlParameter(UPassword, SqlDbType.VarChar, 10); Comm.ParametersUPassword.Value = sUPass; if (Conn.State = ConnectionState.Closed) Conn.Open(); try i = Comm.ExecuteNonQuery(); return i; catch (Exception e) throw e; finally Comm.Dispose(); Conn.Close(); /返回数据表 public DataTable dt(string query) SqlConnection sxgascon = GetConnection(); try SqlDataAdapter sda = new SqlDataAdapter(query, sxgascon); DataSet dt = new DataSet(); sda.Fill(dt, lstable); return dt.Tableslstable; catch DataTable workTable = new DataTable(Customers); return workTable; / GetDDLData与DDLBinding用于Web程序中的DropDownList控件绑定 public DataTable GetDDLData(Int16 TableNo) SqlConnection Conn = GetConnection(); if (Conn.State = ConnectionState.Closed) Conn.Open(); DataSet ds = new DataSet(); SqlCommand Comm = Conn.CreateCommand(); Comm.CommandType = CommandType.StoredProcedure; Comm.CommandText = Pr_GetDDLData; Comm.Parameters.Add(new SqlParameter(Table, SqlDbType.SmallInt); Comm.ParametersTable.Value = TableNo; SqlDataAdapter da = new SqlDataAdapter(Comm); da.Fill(ds, TM); if (Conn.State = ConnectionState.Open) Comm.Dispose(); Conn.Close(); ; return (ds.Tables0); public void DDLBinding(DropDownList ddlName, Int16 TableNo) DataTable dt = GetDDLData(TableNo); ddlName.DataSource = dt.DefaultView; ddlName.DataTextField = dt.Columns1.ToString(); ddlName.DataValueField = dt.Columns0.ToString(); ddlName.DataBind(); ddlName.Items0.Selected = true; 3.2 后台管理系统 3.2.1 登录界面后台管理系统登录界面(FrmLogin.cs)如图3-2所示。图3-2 后台管理系统登录界面系统登录界面主要代码如下:/定义公共变量保存用户信息public static string UserName = ;public static string UName = ;public static string UPassword = ;public static string UDepartment=;public static string UKCode = ;public static string UCode = ;/定义数据库操作类的实例对象DBCls dbobj = new DBCls();/登录按钮处理过程private void btnLogin_Click(object sender, EventArgs e) UName = txtUserName.Text.ToString(); UPassword = txtPwd.Text.ToString(); DataTable dt = dbobj.UserInfo(UName, UPassword); if (dt.Rows.Count 0) UCode = dt.Rows00.ToString(); UserName = dt.Rows02.ToString(); UDepartment = dt.Rows03.ToString(); UKCode = dt.Rows04.ToString(); FrmMain fmain = new FrmMain(); /登录成功跳转到系统主界面 this.Hide(); /隐藏登录界面 fmain.Show(); /显示系统主界面 else MessageBox.Show(用户名或密码错误!, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); return; 3.2.2 系统主界面后台管理系统主界面(FrmMain.cs)如图3-3所示。图3-3系统主界面系统主界面通过菜单提供到各操作页面的导航。通过菜单项调用各操作页面的方法为:/定义要显示操作界面的实例对象fFrmReaderKind f = new FrmReaderKind();/以对话框方式显示f,保证子窗体的操作限制在主窗体内f.ShowDialog();3.2.3 用户权限管理界面用户权限管理界面(FrmCodeManage.cs)如图3-4所示。图3-4用户权限管理界面用户权限管理界面主要代码:private void FrmCodeManage_Load(object sender, EventArgs e) Bind(); OpreateEnable(false); /由于用户类别编码、权限编码、图书类别编码对应数据表字段书名相同,/因而合并到一个窗体完成操作。通过FrmMain.MenuCode的值控制操作哪个代码表private void Bind() /DataGridView数据绑定 string sql = ; switch (FrmMain.MenuCode) case 1: sql = SELECT UKCode, UKName FROM t_User_Kind ORDER BY UKCode; break; case 2: sql = SELECT RCode, RName FROM LibMIS.dbo.t_Right ORDER BY RCode; break; case 3: sql = SELECT BKCode, BKName FROM LibMIS.dbo.t_Book_Kind; break; DataTable dt = dbobj.dt(sql); /读数据 dGV.DataSource = dt; /制定DataGridView数据源 if (dt.Rows.Count 0) /修改界面显示内容 switch (FrmMain.MenuCode) case 1: dGV.Columns0.HeaderText = 用户类别编码; dGV.Columns1.HeaderText = 用户类别名称; break; case 2: . case 3: . /控制各按钮与文本框的操作性,如单击“增加”、“修改”按钮后文本框可编辑,/同时“增加”、“修改”按钮失效。“保存”、“取消”按钮有效。private void OpreateEnable(Boolean YN) txtCode.ReadOnly =!YN; txtName.ReadOnly = !YN; butAdd.Enabled = !YN; butUpdate.Enabled = !YN; butDelete.Enabled = !YN; butExit.Enabled = !YN; butSave.Enabled = YN; butCancel.Enabled = YN; private void butAdd_Click(object sender, EventArgs e) /增加代码 IsAdd = true; /用于在保存时,区分是新增,还是修改 OpreateEnable(true); txtCode.Text = ; txtName.Text = ; sCode = ; sName = ; private void butUpdate_Click(object sender, EventArgs e) /修改 IsAdd = false; OpreateEnable(true); txtCode.ReadOnly = true; private void dGV_Click(object sender, EventArgs e) /单击DataGridView时在文本框中显示选定数据 int i = dGV.CurrentCell.RowIndex; txtCode.Text = dGV0, i.Value.ToString(); txtName.Text = dGV1, i.Value.ToString(); sCode = txtCode.Text.ToString(); sName =txtName.Text.ToString(); private void butCancel_Click(object sender, EventArgs e) /取消修改或新增数据 OpreateEnable(false); txtCode.Text = sCode; txtName.Text = sName; private void butSave_Click(object sender, EventArgs e) /保存新增或修改数据 if (FrmMain.MenuCode = 1 | FrmMain.M

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论