毕业论文--设备管理系统的设计与实现 定稿

毕业论文--设备管理系统的设计与实现 定稿

ID:9823955

大小:788.93 KB

页数:45页

时间:2018-05-11

上传者:U-1335
毕业论文--设备管理系统的设计与实现 定稿_第1页
毕业论文--设备管理系统的设计与实现 定稿_第2页
毕业论文--设备管理系统的设计与实现 定稿_第3页
毕业论文--设备管理系统的设计与实现 定稿_第4页
毕业论文--设备管理系统的设计与实现 定稿_第5页
资源描述:

《毕业论文--设备管理系统的设计与实现 定稿》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

毕业设计(论文)设计(论文)题目设备管理系统的设计与实现姓名:学号:学院:机电工程学院专业:自动化年级四年级指导教师: 毕业设计(论文)开题报告论文题目:设备管理系统的设计与实现姓名:学号:学院:机电工程学院专业:自动化年级:四年级指导教师: 山东大学威海分校毕业论文(设计)开题报告书一、课题来源在三角华茂公司设备安装调试期间进行了三个月的实习实践,对轮胎制造工艺的几大车间进行了基本的了解,主要针对与自己专业相关的设备管理方面有了较为深入的实践认识,希望将自己的所学与工作中的应用结合起来,更好的利用电气时代带来的先进条件,实现设备良好的管理与维护。二、本课题的基本内容一个完整的设备管理系统应该首先将工厂的主要与设备有关的几个部分清楚罗列出来,A,B,C,三大区域,加上动力站的设备,和变电室是五个主要的区域,设备管理系统变电室动力站CBA例B区:1、设备名称2、设备编号    3、制造商    4、编辑    5、查询系统管理:用户管理修改密码换用户登录三、本课题的重点和难点重点难点是:如何实现设备使用过程中所获得的设备运行基本情况的统计,以及在此基础上进行相应设备的编辑、查询;如何实现密码修改及更换用户登录;如何把不同情况下的条件进行组合来构建SQL语句;例●WHERE条件(确定范围谓词BETWEENAND,确定集合谓词IN) 山东大学威海分校毕业论文(设计)开题报告书一、论文提纲1、做好各个层次的数据表,准确的建立表关联;2、做主窗体菜单,分一级菜单和二级菜单;3、编辑主窗体程序代码;4、各个模块要实现基本的添加、删除、修改、查询等操作;二、进度安排2009.12---2010.3.31在三角集团进行实习,详细了解车间设备的构造及工作原理2010.4.1---2010.4.25回学校进行论文的轮廓设计及程序的编写,以构造出论文的大致模型2010.4.26---2010.5.25在论文的细节方面进行补充,程序方面更加完整,确保实例运行尽可能贴合实际生产的要求2010.5.26---2010.6.5准备论文答辨,制作答辨PPT. 毕业设计(论文)成绩评定表学院:专业:年级:姓名学号设计(论文)总成绩设计(论文)题目指导教师评语评定成绩:×60%=签名:年月日答辩小组评语答辩成绩:×40%=组长签名:年月日注:指导教师、答辩小组给予的成绩和设计(论文)总成绩统一实行百分制,总成绩中指导教师评分占60%,答辩小组评分占40%。评语、成绩、签名及日期处必须手写。 目   录摘 要……………………………………………………………………1Abstract…………………………………………………………………1一、系统需求分析………………………………………………………2(一)设备管理系统的背景分析…………………………………2(二)开发设备管理系统的必要性………………………………2二、系统可行性分析……………………………………………………2(一)技术可行性…………………………………………………2(二)经济可行性…………………………………………………3(三)操作可行性…………………………………………………3三、系统总体设计………………………………………………………3(一)系统目标设计………………………………………………3(二)开发设计思想………………………………………………3(三)系统功能分析………………………………………………3(四)系统主要模块构成…………………………………………4(五)设备管理系统开发环境简介………………………………5四、数据库设计…………………………………………………………6(一)数据表设计…………………………………………………6五、系统主窗体设计……………………………………………………7(一)创建工程项目--设备管理系统……………………………7(二)创建系统主窗体……………………………………………7(三)创建主窗体菜单……………………………………………8(四)创建主窗体工具栏…………………………………………14(五)创建主窗体状态栏…………………………………………17六、系统各模块设计……………………………………………………17(一)标准模块设计………………………………………………17(二)编辑查询模块的设计………………………………………18(三)系统管理模块的设计………………………………………28 (四)登录模块的设计……………………………………………31(五)系统说明性模块的设计……………………………………34参考文献………………………………………………………………36谢辞……………………………………………………………………37 摘   要目前的公司企业,对于大型电气设备的使用十分频繁,对于大型设备的管理也成为现代企业管理之中不可或缺的一部分。因此,开发这样一套软件成为很有必要的事情。本管理系统是针对企业的实际需求开发设计的,针对性强,功能齐备,旨在通过帮助该企业设备管理实现信息化,以提高企业管理的效率。  经过分析,我们使用MICROSOFT公司的ACCESS2003和VISUALBASIC 6.0开发工具,利用其提供的各种面向对象的开发工具,首先在短时间内建立系统应用原型,然后对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。关 键 字VisualBasic6.0、Access数据库、设备管理AbstractNowcompanyandenterprise,fortheuseoflargescaleelectronicequipmentarefrequent,themanagementoflargescaleequipmentalsobecomesanintegralpartofenterprisemanagement.Thereforetodevelopsuchasetofsoftwareisbecomeverynecessarymatter.Thismanagementinformationsystemisthecreationthataimsatthebusinessenterpriseoftheactualneed.Thesystemisconcise,canbetothepointandisself-contained,whichaimstohelpthecompanyachievematerialmanagementinformationinordertoraiseeconomybenefit.Throughanalysis,weusetheAccess2003and theVISUALBASIC developmenttoolofthecompanyofMICROSOFT,makinguseofvariousdevelopmenttoolthatfacestotheobjectofwhatitprovide.Weshouldbuildupthesystemapplicationprototypeinashorttimefirst,then,starttheprototypesystemtocarryontheneed,reviseandimprovecontinuously,untilformattheonethatthecustomerissatisfiedandcanbeused.KeywordsVisualBasic6.0,AccessDataBase,theequipmentmanagementinformation37 一、系统需求分析(一)设备管理系统的背景分析设备管理系统是企业内部的信息管理系统,是连接企业内部各生产部门的桥梁与纽带,起着核心作用。目前企业设备自动化管理水平并不高。大多数设备管理办法是设备采购进来以后,将设备的基本情况和相关信息登记,然后将档案存档。以后的档案基本就没人维护,所以设备修改、删除情况等信息不会呈现在管理工作人员面前。而且由于散乱、繁杂、查找和整理不便,设备跟踪信息不能及时体现在设备的档案上。即便采用专门人员整点,对设备的跟踪信息能记录在案,但无形中增加了繁重的手工劳动,整体管理水平还是较低。  本设备管理系统合理的借鉴国际领先的设备管理思想并结合国内设备管理现状,通过在实习期间对三角集团有限公司设备管理情况的研究探索,以灵活、通用为主要设计思想,开发适合本行业的设备管理系统,实现了设备整个生命周期的计算机化管理。本系统将会提高办公效率和设备可靠性,减少工作人员的劳动强度,减少办公耗材,提高现代化管理水平。【1】(二)开发设备管理系统的必要性   传统的设备管理主要是以人工抄写记录存档的运行模式。21世纪是科技信息时代,陈旧的管理模式不能适应新时代的要求,它存在着操作速度慢、散乱、复杂等一系列缺点与不足。由于散乱、复杂,很可能有文案丢失的情况,而且查找也不方便,给管理工作人员带来很大程度的管理滞后,增加了成本,降低了企业生产力。关注当代形式,利用社会上出来的先进技术开发出新的设备管理系统是许多企业拭目以待的,正所谓“工欲善其事,必先利其器”。由此开发的设备管理系统是一套完全为设备管理人员设计的把设备管理由被动管理转为主动管理的系统,它的使用将极大地提高设备管理部门的工作效率,使设备管理人员解脱了繁重的手工劳动,实现了设备整个生命周期的计算机化管理,同时再与使用单位内部网络配合的基础上可以实现无纸化办公二、系统可行性分析可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。必须记住,可行性研究的目的不是解决问题,而是确定问题是否值得去解。怎样达到这个目的呢?当然不能靠主观猜想,而只能靠客观分析。必须分析几种主要的可能解法的利弊,从而判断原定的系统目标和规模是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度。本设计从以下三个方面进行可行性研究:(一)技术可行性本设计“设备管理系统”是为企业设备管理人员开发的。鉴于本人在学习数据库课程设计中已用VisualBasic6.0+Access2003开发过学生成绩管理系统,而且通过三个月毕业实习中的学习和实践,对开发管理信息系统又有了新的认识和提高,使自己在开发管理信息系统方面的技术更加成熟。由于本设计最重要体现的是实用性,所以,通过在实习单位的调查和分析,结合自己现有的技术水平加上导师的指导,还是能按期完成本毕业设计。37 (二)经济可行性成本方面:由于本毕业设计属于(本科)教学的最后一个环节,所以人力消耗免费,资源学校提供,指导老师义务指导。所以成本计算只需计算开发期间开发者的生活消费,学校资源的消耗,所以开发本软件的成本是非常低的。效益方面:为企业开发一个完整、合理的设备管理系统,可大大节余人力,以前需要多人干的工作,使用本系统只需一个人或几个人就能完成,且工作量和劳动强度大大降低。所以开发本软件可以为社会带来很好的经济效益。从以上分析看开发本软件在经济上是可行的。(三)操作可行性本软件是为企业的设备管理者开发的,所有本软件的用户对象是企业的工作人员,由于本软件要设计成友好的界面,写出详细的使用说明,用户只需懂得简单的计算机操作知识,就能自由应用本软件。所以从以上几个方面的分析来看,开发本软件是完全可行的。【2】三、系统总体设计(一)系统目标设计系统的设计目标是要设计成友好的界面,以提高数据共享程度、降低数据冗余度、提高数据查询效率为主要目标 。进而实现企业设备管理的系统化、规范化和自动化,达到提高企业管理效率的目的(二)开发设计思想设备管理系统主要是对企业的各种设备进行管理。设备管理的特点是信息处理量比较大,所管理的设备种类繁多,而且由于新增、修改、删除设备时关联信息多,查询和统计的方式各不相同。因此在管理上实现起来有一定的困难。在本系统的设计过程中,为了克服这些困难,满足计算机管理工作的需要,我们采取了下面的一些原则:●统一各种编辑、查询的格式。●删除不必要的管理冗余,实现管理规范化、科学化。●程序代码标准化,软件统一化,确保软件的可维护性和实用性。●界面尽量简单化,做到实用、方便,尽量满足企业中不同层次员工的需要。此外设备管理系统是一个信息管理系统(ManagementInformationSystem,MIS),其核心是数据库,系统设计以提高数据共享程度、降低数据冗余度、提高数据查询效率为主要目标。考虑到这些我们采用VisualBasic6.0+Access2003来进行开发。(三)系统功能分析本系统主要用编辑、查询、系统管理三个功能模块对设备信息进行综合的管理,让管理人员随时掌握设备的运行动态,以进行操作与管理工作,功能模块图如下:37 设备管理系统编辑查询系统管理单据管理登录信息查询统计报表中心视图窗口帮助退出          图3-1系统功能模块图前台是用户进行综合管理、进入其它操作模块的唯一的接口,主要连接的界面窗口有:设备编辑、设备查询、系统管理三个功能模设备编辑包括新设备的添加、修改、删除;设置三个选项卡:设备、车间、制造商。设备查询包括按设备编号查询、按车间名查询。系统管理包括对修改密码、用户管理、更换用户登录。(四)系统组成部分1.为方便用户选用本系统,主界面按下图所示组成:系统主界面菜单栏工具栏状态栏显示界面         图3-2  主界面布局其中菜单栏包括:编辑、查询、系统管理、视图、窗口、帮助、退出工具栏包括:说明、关于、ReadMe状态栏用于显示系统运行状态如:系统时间、滚动信息显示界面用于显示当前用户、登录时间及各子窗口2.系统主要用编辑、查询、系统管理三个功能模块对设备信息进行综合的管理,让管理人员随时掌握设备的运行动态,以进行操作与管理工作。这三个功能模块的组成分别如下:37 设备编辑按设备按车间按制造商         图3-3  编辑功能模块设备查询按设备编号查询按车间名查询         图3-4 查询功能模块系统管理修改密码用户管理换用户登录         图3-5 系统管理模块(五)设备管理系统开发环境简介本设备管理系统是以VisualBasic为编程语言,以ACCESS2003作为后台数据库而开发的一个数据库管理系统。下面简要介绍一下中文VisualBasic6.0和Access2003。1、中文VisualBasic6.0简介VisualBasic提供了开发Windows应用程序最迅速、最简洁的方法,它提供了一整套工具,供用户开发应用程序。它有其独特的特点,主要特点如下:(1)可视化设计。VB具有所见即所得的功能,在程序设计时,头脑中所想象的应用程序界面,完全可以通过键盘和鼠标完成,而不用编制大量代码,用户只需要用鼠标或键盘把“控件”37 拖到所需的位置并设置他们的大小形状属性等,即可得到所需要的应用程序界面。(2)事件驱动编程,在VB中把“窗体”及“控件”称为对象。那些对象必须对鼠标键盘操作所引起的事件做出响应。响应是指执行一段应用程序,它不沿预定的路线执行而是在响应不同事件时执行不同的代码,因此VB编程重点是在编写事件驱动过程的代码。(3)面向对象的程序设计。VB是面向对象的程序设计语言,软件开发人员主要编写事件驱动过程的代码,使对象对用户的操作做出反映。(4)易学易用,开发周期短。VB简单易学,界面友好,容易使用。VB提供了大量功能强大的“控件”,能帮助开发人员在较短的时间内用少量语句编写出应用程序,缩短了开发周期。【2】2.ACCESS2003简介ASSESS是一个数据库管理系统,它简单易学。ACCESS2003的功能十分强大,利用它可以方便的实现对信息保存、维护、查询、统计等。本系统就是在以ACCESS2003作为后台数据库,以VisualBasic为编程语言为中小型企业管理设备而开发的一个数据库管理系统。四、数据库设计根据系统功能分析,系统需要建立4张表,分别是设备表、车间表、制造商表、用户管理表。(一)数据表设计以下是4个数据表的具体描述,包括字段名称、含义、数据类型、可否为空和说明。1.设备表设备表主要是用来记录设备的基本信息,包括设备编号、设备名,表结构如下所示。        表4-1 设备表结构字段名称含义数据类型可否为空说明设备编号设备的编号Text(7)主键用数字表示设备名设备的名称Text(50)Notnull设备的名称2.车间表车间表主要是用来记录各个车间的设备,包括车间名、设备名,表结构如下所示。        表4-2 车间表结构字段名称含义数据类型可否为空说明车间名车间的名称Text(7)主键车间的名称设备名设备的名称Text(50)Notnull设备的名称3.制造商表制造商表主要用来记录各种设备是由哪个厂家所提供,包括制造商、设备名、设备编号,表结构如下所示。         表4-3 制造商表结构37 字段名称含义数据类型可否为空说明制造商制造商的名称Text(50)Notnull制造商的名称设备名设备的名称Text(50)主键设备的名称设备编号设备的编号Text(7)Notnull设备的编号4.用户管理表 用户管理表用来记录各个用户的信息,包括用户名、用户密码,表结构如下所示。         表4-4 用户管理表结构字段名称含义数据类型可否为空说明用户名用户的名称Text(50)主键用户的名称用户密码用户的密码Text(50)Null用户的密码五、系统主窗体设计(一)创建工程项目--设备管理系统当启动VisualBasic6.0时,可以见到下图所示的“新建工程”窗口,窗口中列出了可建立的工程类型。选择 “标准EXE“,VisualBasic6.0将自动产生一个Form窗体,属性都是缺省设置。这里我们删除这个窗体,单击File->SaveProject菜单,将这个工程项目命名为设备管理系统。图5-1VisualBasic6.0中可以建立的工程类型(二)创建系统主窗体VisualBasic创建的应用程序可以是SDI(单文档界面)和MDI(多文档界面)。在SDI的程序中,每个窗体之间是独立的。而MDI的程序中,有一个窗体是主窗体,可以包含其他窗体,他的类型是MDIForm。本设计采用MDI多文档界面,这样可以使程序更加美观、整齐有序。右键单击工程管理窗口,选择 添加->添加MDI窗体,这样就可以生成一个MDI窗体。窗体的属性设置37 见表5-1。属性属性取值NameMDIForm1Caption设备管理系统表5-1主窗体属性设置主窗体界面设计如图5-2所示图5-2系统主窗体主窗体的初始程序如下,用于显示 用户名、当前日期:PrivateSubMDIForm_Load()LabOperator.Caption=UserNameLabDate.Caption=Format(Date,"YYYY年MM月DD日")EndSub(三)创建主窗体菜单熟悉Windows下应用程序的用户对菜单一定有比较深的印象。所谓菜单,即是指应用程序中为用户提供的一组命令,这些命令出现在应用程序界面的顶部。每项菜单有多项子菜单,具有一定的专门功能,用户容易通过主菜单来访问其下的子菜单。增加菜单可以增强应用程序的功能。下面将介绍菜单及菜单的编辑和使用。37 1.菜单简介菜单栏在窗体栏的标题栏下面,包含一个或多个菜单标题。当单击一个菜单标题,包含菜单项目的列表就被拉下来。菜单项可以包含命令、分隔条和子菜单标题。用户看到的每个菜单项和在“菜单编辑器”中定义的一个菜单控件相对应。为了使应用程序简单好用,应该将菜单项按功能进行分组。菜单控件使一个对象,与其他对象一样,它具有定义它的外观与行为的属性。在设计或运行时可以设置Caption属性、Enabled和Visible属性、Checked属性以及其他属性。菜单控件只包含一个事件,即Click事件,当用鼠标或键盘选中该菜单控件时,将调用该事件。2.VisualBasic菜单编辑器菜单编辑器可以创建新的菜单和菜单栏,也可以向现存的菜单中增加新的命令、用新的命令替代现存的菜单命令、产生新的菜单和菜单栏,改变和删除现存菜单和菜单栏。要打开菜单编辑器,在“工具”菜单中选择“菜单编辑器”选项。或击鼠标右键,选择弹出式菜单中的“菜单编辑器”。弹出菜单编辑器窗口如图5-3所示。   图5-3 菜单编辑器菜单编辑器的基本属性如下:标题—出现在控件上的文本。名称—代码中用来引用菜单控件的名字。快捷键—可以访问菜单的键盘按键组合。创建的菜单标题将显示在窗体上。在设计时,单击一个菜单标题可下拉其相应的菜单项。37 创建分隔符,如果在设计的菜单中创建分隔符条,只需在想要分隔开来的菜单项之间插入一个菜单控件。单击左、右箭头按钮使新菜单项缩进到与它要隔开的菜单项同级。然后在“标题”文本框中键入一个连字符(-)。设置“名称”属性。“确定”,关闭菜单编辑器。创建赋值访问键和快捷键为了提高应用程序的性能,为用户提供最方便、快捷的操作,可以定义菜单的访问键和快捷键,改进键盘对菜单命令的访问。访问键,要在菜单编辑器中给菜单控件赋值访问键,先选取要赋值访问键的菜单项,在该菜单项“标题”框中,要在作为访问键字符的前面键入一个(&)字符。快捷键,快捷键提供了一种键盘单步的访问方法,按下时会立刻运行一个菜单项。快捷键的赋值包括功能键与控制键的组合,如CTRL+F1键或CTRL+A键。他们出现在菜单中相应菜单项的右边。此外,大多数MDI应用程序都结合了“窗口”菜单。这是一个显示所有打开的子窗体标题的特殊菜单,如图5-5所示。“窗口”菜单中显示每个打开子窗体的名称。在VisualBasic中,如果要在某个菜单上显示所有打开的子窗体标题,只需利用菜单编辑器将该菜单的“WindowsList”属性设置为True,即选中显示窗口列表检查框,就可以实现。如图5-4所示                   图5-4 “窗口”菜单的属性设置37             图5-5 窗口菜单根据以上介绍的方法创建本设计的菜单结构如图5-6所示基本信息(&F)….货物信息….仓库信息….供应商信息….往来客户….库存状况信息….—编辑查询单据管理….新增入库单….新增出库单….新增借入单….新增借出单….新增调拨单….新增报损单….—….入库单管理….出库单管理….借入单管理….借出单管理….调拨单管理….报损单管理….—….进行月盘点查询统计(&J)….单据查询37 ….库存查询….—….高级查询….自定义查询….-….货物出入统计….职员操作统计报表中心….打印入库单….打印出库单….打印借入单….打印借出单….打印调拨单….打印报损单….—….打印月盘点….—….页面设置(&U)视图(&V)….工具栏(&T)….状态栏(&B)系统管理(&E)….公司信息….职员信息….—….查看日志….数据清除….系统初始化….—….备份数据库….还原数据库….还原到昨天数据库….—….修改密码(&E)….用户管理(&M)….换用户登录窗口(&W)帮助(&H)….查看帮助….关于(&A)CTRL+A退出(&X)图5-6设备管理系统菜单结构3.“菜单”中的各个“子菜单”的程序代码(1)“编辑”菜单的Click事件和程序代码如下。点击“编辑”会弹出编辑子窗口。PrivateSubmnuEdit_Click()frmEdit.ShowfrmEdit.WindowState=vbMaximizedEndSub(2)“查询”菜单的Click事件和程序代码如下。点击“查询”会弹出查询子窗口。PrivateSubmnuQuery_Click()frmQuery.ShowfrmQuery.WindowState=vbMaximizedEndSub37 (3)“视图”菜单下的“工具栏”子菜单的Click事件的程序代码如下。点击“工具栏”主窗体会隐藏工具栏。 PrivateSubmnuViewToolbar_Click()mnuViewToolbar.Checked=NotmnuViewToolbar.CheckedToolbar1.Visible=mnuViewToolbar.CheckedEndSub(4)“视图”菜单下的“状态栏”子菜单的Click事件的程序代码如下。点击“状态栏”主窗体会隐藏状态栏。PrivateSubmnuViewStatusBar_Click()  mnuViewStatusBar.Checked=NotmnuViewStatusBar.CheckedsbStatusBar.Visible=mnuViewStatusBar.CheckedEndSub(5)“系统管理”菜单下的“修改密码”子菜单的Click事件的程序代码如下。点击“修改密码”主窗体会弹出修改密码子窗口。PrivateSubM修改密码_Click()PasModify.ShowPasModify.WindowState=vbMaximizedEndSub(6)“系统管理”菜单下的“用户管理”子菜单的Click事件的程序代码如下。点击“用户管理”主窗体会弹出用户管理子窗口。PrivateSubM用户管理_Click()用户管理.Show用户管理.WindowState=vbMaximizedEndSub(7)“系统管理”菜单下的“换用户登录”子菜单的Click事件的程序代码如下。点击“换用户登录”主窗体会弹出用户登录窗口。PrivateSubM换用户登陆_Click()'启动登陆对话框DimfLoginAsNew登录fLogin.ShowvbModalIfNotfLogin.okThen'登录失败,退出应用程序ExitSubEndIfUnloadfLogin'启动主窗口UnloadMeMDIForm1.ShowEndSub(8)“帮助”菜单下的“关于”子菜单的Click事件的程序代码如下。点击“关于”主窗体会弹出关于窗口。PrivateSubM关于_Click()37 frmAbout.ShowEndSub(9)“退出”菜单的Click事件的程序代码如下。点击“退出”结束系统的运行状态。PrivateSubmnuFileExit_Click()EndEndSub(四)创建主窗体工具栏工具栏提供了对于应用程序中最常用的菜单命令的快速访问,它进一步增强了应用程序的菜单界面,已经成为许多基于Windows的应用程序的标准功能。工具栏的制作有两种方法:一是手工制作,即利用图形框和命令按钮,这种方法比较繁琐;另一种方法是使用ToolBar控件来创建工具栏,非常容易且很方便。在本系统中,我采用的是ToolBar控件来创建工具栏,使用前需先按照下面的步骤将ToolBar控件添加到工具箱。1.把ToolBar控件添加到工具箱ToolBar控件不是常用控件,使用前先选择菜单“工程”/“部件”项打开“部件”对话框,选择“控件”选项卡,单击“MicrosoftWindowsCommonControls”框,然后单击“确定”按钮关闭“部件”对话框,此时会在工具栏上增加一系列控件,其中之一就是ToolBar控件,然后双击工具箱中的ToolBar控件图标,为窗体添加一个新的工具栏,工具栏会显示在窗体的标题栏下。2.在ToolBar控件中添加按钮右键单击工具栏,在出现的弹出菜单中选择“属性”项打开工具栏的“属性页”对话框,如图5-7 所示,可以进行工具栏的编辑。单击“属性页”中的“按钮”选项卡,然后单击“插入按钮”便把一个新按钮添加到工具栏中。 给新按钮添加显示文字,可以在“标题”文本框中输入相应的文字。用户可以通过在“索引”文本框中输入数值来设置某个按钮的“Index”属性值,这是按钮在ToolBar控件的索引值,用于标识该按钮。用户在工具栏中添加按钮时,VisualBasic会自动为新按钮分配“Index”值。用户还可以在“关键字”文本框中输入文字,设置按钮的“Key”属性值,该属性帮助用户确认这个按钮。按钮的样式(Style)属性决定按钮的行为。按钮对象的一个重要的属性是样式(Style)属性。37      图5-7 工具栏的“属性页”对话框“按钮”选项卡本系统设计的工具栏效果,如下图5-8所示          图5-8 主窗体工具栏3.为按钮添加图标工具栏按钮通常会显示图标,要使工具栏按钮能够显示这样的图像,必须首先将ImageList控件与ToolBar控件相关联。要在窗体上添加ImageList控件,双击工具箱中的ImageList控件图标,在窗体上添加ImageList控件;右键单击该控件在弹出的菜单中选择“属性”项,显示ImageList控件的“属性页”对话框,从中选择“图像”选项卡,如图5-9所示。使用“插入图片”命令,从打开的“选定图片”对话框中选择适当的图片文件来建立图片列表,VisualBasic会自动为每一个图片分配相应的索引号。建立工具栏按钮和ImageList控件之间的关联。打开工具栏的“属性页”对话框,选择“通用”选项卡,如图5-10所示。在“图像列表”中选择已建立的ImageList控件;再选择“按钮”选项卡。在“图像”文本框中输入选用的图片的索引号,单击“确定”按钮就完成对图像的选择。37    图5-9 ImageList控件页属性页的“图像”选项卡   图5-10 工具栏属性页的“通用”选项卡4.ToolBar控件的ButtonClick()事件程序的编写37 要为工具栏中的按钮添加代码,可以为ToolBar控件编写ButtonClick()事件程序,并在程序中通过判断“Button.Index”(或“Button.Key”)属性值来判断单击了哪一个按钮,通过SelectCase结构来运行相应的程序。本系统的程序如下:PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)SelectCaseButton.KeyCase"关于"frmAbout.ShowCase"ReadMe"formReadMe.ShowCase"说明"说明.Show说明.WindowState=vbMaximizedEndSelectEndSub(五)创建主窗体状态栏状态栏一般位于窗体的底部,用于向用户显示系统的一些状态,比如系统信息、当前用户、时间、日期等。状态栏的添加比较简单,这里不再详细说明。但本窗体的状态栏如图5-11所示。          图5-11 主窗体的状态栏在主窗体中为状态栏添加的代码如下:PrivateSubTimer1_Timer()IfLen(sbStatusBar.Panels(1).Text)UserPasThenMsgBox"原密码错误!"ExitSubEndIfIfNewPas1.Text<>NewPas2.TextThenMsgBox"两次密码不一致!"ExitSubEndIfOnErrorResumeNextDimfitAsString37 '查找用户名fit="用户名='"fit=fit+UserName+"'"登录.Data2.Recordset.FindFirstfit'找不到该用户If登录.Data2.Recordset.NoMatchThenExitSubElseUserPas=NewPas1.Text'设置新密码登录.Data2.Recordset.Edit登录.Data2.Recordset.Fields("用户密码").Value=UserPas登录.Data2.Recordset.Update登录.Data2.RefreshMsgBox"修改成功!"EndIf2.用户管理子窗体的设计 图6-5 用户管理子窗体37 该子窗体可以增加、删除、修改用户名及其密码,窗体中使用一个ActiveX控件DataGrid,此外,窗体中还使用了一个隐藏的ADO控件,该控件名为Adodc1,将ADO控件与数据库文件database.mdb连接,并将记录源的命令类型设置为8-adCmdUnknown,在命令文本中输入如下SQL命令:select用户名,用户密码from用户管理代码如下:PrivateSubAdodc1_MoveComplete(ByValadReasonAsADODB.EventReasonEnum,ByValpErrorAsADODB.Error,adStatusAsADODB.EventStatusEnum,ByValpRecordsetAsADODB.Recordset)OnErrorResumeNextAdodc1.Caption=Adodc1.Recordset.Fields("用户名").ValueEndSubPrivateSubcomAdd_Click()If用户名.Text=""ThenMsgBox"请填写用户名!":ExitSubOnErrorGoToquitAdodc1.Recordset.MoveLastAdodc1.Recordset.AddNewAdodc1.Recordset.Fields("用户名").Value=用户名.TextAdodc1.Recordset.Fields("用户密码").Value=用户密码.TextAdodc1.Recordset.UpdateAdodc1.RefreshUnload用户管理用户管理.Show用户管理.WindowState=vbMaximizedquit:EndSubPrivateSubcomDelete_Click()DimiAsIntegeri=MsgBox("确定要删除此记录?",vbYesNo+vbExclamation+vbDefaultButton1,"编辑")Ifi=vbYesThen'删除当前选项卡所对应表中的记录Adodc1.Recordset.DeleteAdodc1.RefreshUnload用户管理用户管理.Show37 用户管理.WindowState=vbMaximizedEndIfEndSubPrivateSubcomEdit_Click()Adodc1.Recordset.Fields("用户名").Value=DataGrid1.Columns(0).TextAdodc1.Recordset.Fields("用户密码").Value=DataGrid1.Columns(1).TextAdodc1.Recordset.UpdateAdodc1.RefreshUnload用户管理用户管理.Show用户管理.WindowState=vbMaximizedEndSub'初始化查询窗体PrivateSubForm_Load()SetDataGrid1.DataSource=Adodc1'绑定操作Adodc1.RefreshEndSub3.换用户登录子窗体的设计 用于更换用户登录,单击将弹出“登录”窗口,用于重新登录(四)登录模块的设计运行应用程序时,首先弹出的将是登录窗口,界面如图6-6所示  图6-6 登录窗口37 在设计时窗体使用了一个隐藏的Data控件,该控件名为Data2代码如下:PrivateDeclareFunctionGetUserNameLib"advapi32.dll"Alias"GetUserNameA"(ByVallpbufferAsString,nSizeAsLong)AsLongOptionExplicitPublicokAsBooleanPrivateSubcmdCancel_Click()'设置全局变量为false'不提示失败的登录ok=FalseMe.Hide'EndEndSubPrivateSubcmdOK_Click()'ToDo:创建测试密码是否正确OnErrorResumeNext'检查正确密码DimsuccessAsBooleansuccess=FalseDimfitAsString'查找用户名fit="用户名='"fit=fit+txtUserName.Text+"'"Data2.Recordset.FindFirstfit'找不到该用户IfData2.Recordset.NoMatchThensuccess=FalseMsgBox"该用户不存在!",vbCriticalExitSubElse'找到该用户,但密码错误'OnErrorGoToenterDimOldPasAsStringOldPas=Data2.Recordset.Fields("用户密码").Value37 IfOldPas=txtPassword.TextThensuccess=True'以下三个变量保存以备后用UserName=txtUserName.Text'用户名UserPas=txtPassword.Text'密码'Purview=Data2.Recordset.Fields("用户权限").Value'权限Elsesuccess=FalseEndIfEndIf'如果登陆失败Ifsuccess=FalseThenMsgBox"密码错误,再试一次!",vbExclamation,"登录"txtPassword.SetFocustxtPassword.SelStart=0txtPassword.SelLength=Len(txtPassword.Text)ExitSubElseok=TrueMe.HideMDIForm1.ShowEndIfEndSubPrivateSubData2_Validate(ActionAsInteger,SaveAsInteger)EndSubPrivateSubForm_Load()DimsBufferAsStringDimlSizeAsLongsBuffer=Space$(255)lSize=Len(sBuffer)CallGetUserName(sBuffer,lSize)IflSize>0ThentxtUserName.Text=Left$(sBuffer,lSize)ElsetxtUserName.Text=vbNullStringEndIf'初始化数据连接37 Data2.Visible=False'连接数据库IfRight(App.Path,1)=""ThenData2.DatabaseName=App.Path+"database.mdb"ElseData2.DatabaseName=App.Path+"database.mdb"EndIf'设置记录源Data2.RecordSource="用户管理"Data2.RefreshEndSub(五)系统说明性模块的设计系统说明性模块包括:关于、说明、ReadMe ,3个窗口“说明”窗体的MDIChild属性设置为True,执行主窗体中的“说明”命令后,系统界面如图6-7所示图6-7  “说明”子窗体37 “关于”窗口界面如下所示:      图6-8 “关于”窗口界面命令按钮的代码如下:PrivateSubcmdOK_Click()UnloadMeEndSub37 参考文献[1]http://www.yyat.cn/view-3451.html   2010.5.25[2]http://wenku.baidu.com/view/c89d1d4c2e3f5727a5e962ae.html 2010.5.25[3] 罗朝盛,余文芳,余平.VisualBasic6.0程序设计教程(第3版).北京:人民邮电出版社,2009[4] 美)GregPerry编著戴红,陈喆,姚娜译.学用VisualBasic6.0    北京:清华大学出版社,2003[5]龚沛曾,陆慰民,杨志强编.VisualBasic6.0程序设计教程北京:高等教育出版社,2001.7[6]张树兵,戴红,陈哲著.VisualBasic6.0入门与提高北京:清华大学出版社,2000.11[7]飞思科技产品研发中心编著.VisualBasic灵感编程北京:电子工业出版社,2002.6[8]汪远征,刘瑞新著.VisualBasic6.0与可视化编程上海:上海科学技术出版社,2002.5[9]王珊等编著.数据库概论北京:高等教育出版社,2003.2[10]网冠科技编著.VisualBasic6.0程序设计工程师北京:机械工业出版社2001.237 谢   辞首先由衷感谢我的指导老师曹大英教授,在我的毕业设计过程中,得到了老师的精心指导和亲切关怀,尤其在本人撰写论文时,曹老师更是给予细心的指导和帮助,并认真细致地审阅,提出修改意见,是他的悉心指导和严格要求才使我能够顺利地完成本论文的撰写工作。在此,谨向恩师致以崇高的敬意和衷心的感谢,我会继续努力,以回报老师和母校。37 37

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭