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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于VC++的车辆管理设计与实现.docx

1、基于VC+的车辆管理设计与实现车辆管理系统的设计与实现 摘 要 随着社会的发展,车辆逐渐走进千家万户,从而诞生了一个问题:车辆管理。本系统旨在通过计算机技术,实现管理员对车辆信息进行简单的管理。系统通过用户的管理来实现对车辆信息的新增、修改、删除等管理。系统采用Visual C+编写,后台采用Microsoft Office Access 作为数据库,使得系统有较好的可靠性和可执行性,对实现车辆信息管理有一定的实用价值。关键词 车辆管理系统;Visual C+;Microsoft Office Acces第1章 绪论 要设计车辆管理系统,就要分析其性能及其可行性和客户需求,只有经过初步的分析、

2、考核,才能明白制作车辆系统的重要性、必要性和可行性。这样才不会盲目的,达到有利于目前车辆管理系统的改革和发展。1.1引言现代社会中车辆对于人们来说不在是简简单单的交通运输工具,在这个时间就是生命,效率就是金钱的高速时代,各种类型的车辆对于人们却是参与时代竞争必不可少的工具。然而我们不得不面对繁多而难于管理的一个现实。怎样才可以在一个或几个单位中方便的对所属的车辆进行简单而有效的查询、新购车辆的新增入库以及旧车的报废删除却是急需解决的!要解决上面的问题就需要我们有一个有效的管理系统,当然我们也可以用最原始的笔墨来进行记录。但我想没几个人会选择这种方式。在这信息化的时代,时间是可贵的。而在工作中如

3、何提高工作效率则成了十分重要的问题。在电脑普及率如此高的今天,用电脑来进行各种资源的管理是十分常见的。而电脑管理程序的出现,则更提高了工作的效率。关于管理系统,种类十分繁多,小到个人财物,大到公司企业都用到了管理系统。可见管理系统的应用是很广泛的。现代社会中车辆对于人们来说不在是简简单单的交通运输工具,在这个时间就是生命,效率就是金钱的高速时代,各种类型的车辆对于人们却是参与时代竞争必不可少的工具。然而我们不得不面对繁多而难于管理的一个现实。怎样才可以在一个或几个单位中方便的对所属的车辆进行简单而有效的查询、新购车辆的新增入库以及旧车的报废删除却是急需解决的!要解决上面的问题就需要我们有一个有

4、效的管理系统,当然我们也可以用最原始的笔墨来进行记录。但我想没几个人会选择这种方式。在这信息化的时代,时间是可贵的。而在工作中如何提高工作效率则成了十分重要的问题。在电脑普及率如此高的今天,用电脑来进行各种资源的管理是十分常见的。而电脑管理程序的出现,则更提高了工作的效率。关于管理系统,种类十分繁多,小到个人财物,大到公司企业都用到了管理系统。可见管理系统的应用是很广泛的。1.2系统的可行性分析 1.2.1经济由于此程序是开发于十分成熟的开发环境和系统环境: Windows XP,以Microsoft Visual C+6.0, 其使用普及率是非常的高,使用其相当成熟的技术可大大减小经济投入,

5、基本上可以做到人人都可以使用本程序而不需要额外购置其他设备。同时开发难度也不大,开发者的投入也不大,所以在经济上是可行的。1.2.2技术 Visual C+编程工具简介本课程设计是用Microsoft Visual C+ 6.0来完成程序开发的,主要采用MFC的程序设计方法,并在编程过程中运用到了多线程的思想。在数据库方面用到的相关知识并不是太多,因为这毕竟只是VC+的课程设计并不是数据库的课程设计。图形的绘制部分则是用到了GDI的绘图方法。GDI是Graphics Device Interface的缩写,含义是图形设备接口,它的主要任务是负责系统与绘图程序之间的信息交换,处理所有Window

6、s程序的图形输出。在Windows操作系统下,绝大多数具备图形界面的应用程序都离不开GDI,我们利用GDI所提供的众多函数就可以方便的在屏幕、打印机及其它输出设备上输出图形,文本等操作。GDI的出现使程序员无需要关心硬件设备及设备驱动,就可以将应用程序的输出转化为硬件设备上的输出,实现了程序开发者与硬件设备的隔离,大大方便了开发工作。下面再来就多线程进行相关的说明。多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率。线程是在同一时间需要完成多项任务的时候被实现的。使用线程的好处有以下几点:使用线程可以把占据长时间的程序中的任务放到后台去处理。用户界面可以更加吸引人,这样比如用户

7、点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度。程序的运行速度可能加快。在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下我们可以释放一些珍贵的资源如内存占用等等。以上是使用多线程的编程方法所带来的好处,如果能很好地运用的话,其带来的性能是相当地优越的。当然,也并不是说多线程是十分完美的,我们知道在现实世界中,任何事物都有是具有两面性的,多线程也有其自己的缺点。以下列出了一些:如果有大量的线程,会影响性能,因为操作系统需要在他们之间切换。 更多的线程需要更多的内存空间。线程会给程序带来更多的bug,因此要小心使用。线程的中止需要考

8、虑其对程序运行的影响。通常块模型数据是在多个线程间共享的,需要一个合适的锁系统替换掉数据共享。不过总体上来讲,在本程序中使用多线程所带来的好处是大于其弊端的。因为程序中使用到线程的地方并不复杂,所以在程序中运用这个编程技术是可行的1。 ODBC技术简介:本程序采用的ODBC(Open Database Connectivity,开放数据库互连)链接技术是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务

9、。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。 一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access , MYSQL还是Oracle数据库,均可用ODBC API进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。一个完整的ODBC由下列几个部件组成: 应用程序(Application)。 ODBC管理器(Administrator)。该程序位于Windows 95控制面板(Control Panel)的32位O

10、DBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。驱动程序管理器(Driver Manager)。驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件。 ODBC API。 ODBC 驱动程序。是一些DLL,提供了ODBC和数据库之间的接口。数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。各部件之间的关系如图下图所示: 图1.1 ODBC各部件关系图应用程序要访问一个数据库,首先必须用ODBC管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起O

11、DBC与具体数据库的联系。这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。在ODBC中,ODBC API不能直接访问数据库,必须通过驱动程序管理器与数据库交换信息。驱动程序管理器负责将应用程序对ODBC API的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。在访问ODBC数据源时需要ODBC驱动程序的支持。用Visual C+ 5.0安装程序可以安装SQL Server、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Oracle 和Microsoft Text等驱动程序在缺省

12、情况下,VC5.0只会安装SQL Server、 Access、 FoxPro和dBase的驱动程序如果用户需要安装别的驱动程序,则需要重新运行VC 5.0的安装程序并选择所需的驱动程序。 ODBC 使用层次的方法来管理数据库,在数据库通信结构的每一层,对可能出现依赖数据库产品自身特性的地方,ODBC 都引入一个公共接口以解决潜在的不一致性,从而很好地解决了基于数据库系统应用程序的相对独立性,这也是ODBC 一经推出就获得巨大成功的重要原因之一。 从结构上分,ODBC 分为单束式和多束式两类: 单束式驱动程序介于应用程序和数据库之间,像中介驱动程序一样数据提供一个统一的数据访问方式。当用户进行

13、数据库操作时,应用程序传递一个ODBC 函数调用给ODBC 驱动程序管理器,由ODBC API 判断该调用是由它直接处理并将结果返回还是送交驱动程序执行并将结果返回。由上可见,单束式驱动程序本身是一个数据库引擎,由它直接可完成对数据库的操作,尽管该数据库可能位于网络的任何地方。 多束式驱动程序负责在数据库引擎和客户应用程序之间传送命令和数据,它本身并不执行数据处理操作而用于远程操作的网络通信协议的一个界面。前端应用程序提出对数据库处理的请求,该请求转给ODBC 驱动程序管理器,驱动程序管理器依据请求的情况,就地完成或传给多束驱动程序,多束式驱动程序将请求翻译为特定厂家的数据库通信接口(如Ora

14、cle 的SQLNet)所能理解的形式并交于接口去处理,接口把请求经网络传送给服务器上的数据引擎,服务器处理完后把结果发回给数据库通信接口,数据库接口将结果传给多束式ODBC 驱动程序,再由驱动程序将结果传给应用程序2。 Access 2003简介本程序采用的Access数据库是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必

15、编写代码,就可以完成大部分数据管理的任务。 Access是一种关系型数据库管理系统,其主要特点如下: 存储方式单一 Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。 面向对象 Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。

16、同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。 界面友好、易操作 Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。 集成环境、处理多种数据信息 Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。 Access支持ODBC

17、(开发数据库互连,Open Data Base Connectivity)利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用3。 开发环境简介工硬件环境:硬件平台是指开发与运行所需要的硬件环境,主要包括计算机机型及硬件配置。由于本系统是一个小型的MIS管理系统,因此对计算机硬件的要求不高,比较经济,只要配备如下表所示的就

18、可以。 内容 最低配置 建议配置:主机 P/200 PII/266以上内存 64MB 128MB以上硬盘 10GB 20GB以上显示器 VGA以上本系统在开发时选用了稳定性较强的Windows XP中文专业版和Visual C+6.0作为开发语言,由于这些软件产品都是Microsoft公司的产品,因此彼此之间的兼容性较好,开发出的应用系统稳定性较高。 一个MIS应有一个调试可集成的系统开发平台。20世纪90年代以来,MIS平台已经发展成为把操作系统与其外部接口融为一体的集成平台。其软件系统可以包括操作系统、图形用户系统、网络通信、数据库管理系统和程序设计语言等。硬件平台可以把CPU与存储管理单

19、元、协处理器、网卡等集成为一体,从而形成支持MIS应用开发与运行临近的一体化开发环境5。1.2.3社会本程序为绿色软件,没有任何商业行为,也不存在涉及法律的有关事项,同时在信息交换量十分大的现代社会此类软件颇受成功人事和人际交往多的人员亲赖,其使用前景被看好,故在社会方面可行。1.3系统的功能需求分析本次课程设计主要是着手于解决实际生活中车辆管理问题,由此我们可以得出下对软件的功能需求: 管理员登录用管理员的身份登录管理系统可使系统更加安全,同时也方便资料的录入。 查询这里可以不用登录即可查询车主的信息,包括车主姓名、身份证以及其拥有的车辆的车牌号。 基本资料维护这里可以对用户、车辆、车主的基

20、本资料进行维护。 关联车辆信息这里考虑到一位车主可能不止拥有一辆车,此功能可以让一位车主与多辆车的资料关联。第2章 系统的总体设计本系统主要完成了管理员登录、基本资料维护、查询以及资料关联等模块。2.1 系统功能模块根据用户需求本程序有如下功能模块: 管理员登录 查询 基本资料维护 关联车辆信息系统总框架图如图2.1:图2.1系统功能模块结构图2.2 数据模型设计根据需求分析,完成以下设计。E-R图为下图所示:图2.2系统E-R图这些实体涉及的数据项有:车辆信息:车牌、车辆编号、出厂日期、是否年检、厂商。车主信息:车主姓名、车主编号、身份证。用 户:用户帐号、用户姓名、用户密码、身份证。管理员

21、:管理员帐号、管理员密码、管理员姓名。2.3 数据库设计数据库采用了Microsoft推出的Access数据库,这是微软集成到Office中的一个桌面数据库,能够快速方便的和Office的其他套件综合使用。由于Access具有显著的简易性和有效性,大量的桌面数据库系统都采用Access作为后台数据库。使用Access的好处还在于,如果你的系统扩展到Client/Server模式的时候,可以使用Microsoft的数据库服务器软件SQL Server,此时,程序只需要简单的修改一下链接(ADO的数据源)就可以,这样,为程序的平滑扩展提供了非常有力的条件。本系统中所涉及到的主要实体主要有三个数据表

22、:各表物理结构如下:用户表结构如表2-3:表2-3管理员表字段名称类型宽度小数位用户帐号文本30用户密码文本50用户姓名文本30身份证长整型50用户编号长整型180管理员结构表如表2-4:表2-4车主表字段名称类型宽度小数位车主姓名文本30车主编号长整型50车主身份证长整型180管理员结构表如表2-4:表2-5车辆表字段名称类型宽度小数位车辆编号文本30车牌号文本50厂商文本30车型文本30出厂日期日期30第3章 系统详细设计与实现针对分析的情况,以及需求情况,数据库的设计是第一步,接着就是根据需求对系统进行总体的设计。实现符合要求的最终系统。3.1 基本资料维护功能的实现当用户登录后即可对数

23、据库进行维护,如图所示:图3.1基本资料维护为了方便管理,程序中加入用户资料管理,此模块可以对管理用户进行设置,其中包括:姓名、编号、身份证、密码以及职务。如图所示:图3.2用户资料维护相关代码:CClerkMDlg:CClerkMDlg(CWnd* pParent /*=NULL*/) : CDialog(CClerkMDlg:IDD, pParent) /AFX_DATA_INIT(CClerkMDlg) m_strUserNameQ = _T(); m_strUserName = _T(); m_strUserIDQ = _T(); m_strUserID = _T(); m_strPa

24、ssword = _T(); m_strIDCard = _T(); /AFX_DATA_INIT在此功能模块中,可以方便的对车辆资料进行维护,其中项目有:车牌、车辆编号、车型、厂商、出厂日期、是否年检,同时还有增加、修改、删除和查询功能。如图所示:图3.3车辆资料维护相关代码:CBookMDlg:CBookMDlg(CWnd* pParent /*=NULL*/) : CDialog(CBookMDlg:IDD, pParent) /AFX_DATA_INIT(CBookMDlg) m_strAuthor = _T(); m_strBookID = _T(); m_strBookIDQ =

25、_T(); m_strBookName = _T(); m_strBookNameQ = _T(); m_strFlag = _T(); m_strPress = _T(); m_strPressDate = _T(); /AFX_DATA_INIT在此功能模块中,可以方便的对车主资料进行维护,其中项目有:车主姓名、车主编号、身份证,同时还有增加、修改、删除和查询功能。如图所示:图3.4车主资料维护相关代码:CReaderMDlg:CReaderMDlg(CWnd* pParent /*=NULL*/) : CDialog(CReaderMDlg:IDD, pParent) /AFX_DATA

26、_INIT(CReaderMDlg) m_strReaderIDQ = _T(); m_strReaderID = _T(); m_strReaderName = _T(); m_strReaderNameQ = _T(); m_strIDCard = _T(); /AFX_DATA_INIT 3.2 查询功能的实现为了方便用户对资料的掌握,查询功能不需要登录也可以用,可以方便的查询车主以及他所拥有的车辆,显示信息包括车主姓名、车主身份证、其拥有车辆的车牌。如图所示:图3.5查询功能界面图3.6输入编号后即可相关代码:void CReaderQryDlg:OnQuery() / TODO: A

27、dd your control notification handler code here m_lstBook.DeleteAllItems(); UpdateData(TRUE); m_strReaderName = ; m_strReaderIDCard = ; UpdateData(FALSE); if (m_strReaderID = ) :AfxMessageBox(请输入车主ID); return; m_ReaderSet.m_strFilter=READER_ID=+m_strReaderID+; m_ReaderSet.Open(); if (m_ReaderSet.IsEO

28、F() AfxMessageBox(此车主ID号码不存在!); m_ReaderSet.Close(); return; pContext) / TODO: Add your specialized code here and/or call the base class return CDialog:Create(IDD, pParentWnd);int CReaderQryDlg:OnCreate(LPCREATESTRUCT lpCreateStruct) if (CDialog:OnCreate(lpCreateStruct) = -1) return -1; / TODO: Add

29、your specialized creation code here return 0;3.3 信息关联功能的实现此功能模块是考虑到车主有可能不止只拥有一辆车,利用此功能可以让一位车主的资料与多辆车的资料关联,在查询功能中可以查到。如图所示:图3.7选择关联车辆信息功能图3.8关联车辆信息界面图3.9输入相应的车主与车辆编号即可 相关代码:CLendOutDlg:CLendOutDlg(CWnd* pParent /*=NULL*/) : CDialog(CLendOutDlg:IDD, pParent) /AFX_DATA_INIT(CLendOutDlg) m_str车主ID = _T(

30、); m_str车辆ID = _T(); /AFX_DATA_INIT if (!mDB.Open(_T(cheliangguanli) AfxMessageBox(无法打开数据库!); return; try mDB.ExecuteSQL(mSqlStr); catch(CDBException e) AfxMessageBox(执行错!); return; mDB.Close(); AfxMessageBox(操作成功!)第4章 性能测试与分析在完成了系统各方面的设计后,为了保证系统性能的稳定性跟安全性等,对系统做测试和分析。显示登录界面,登录帐号为王大为,密码为117117,如图所示:图4.1 登录界面如果密码不正确会有提示。如图所示:图4.2 登录失败界面进入主界面后,管理员登录后可以进行所有操作,而没登录只能进行查询操作。如图所示:图4.3 登录后操作界面图4.4 没登录操作界面用户资料维护

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

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