毕业设计(论文)-考试题库系统的设计与实现.doc_第1页
毕业设计(论文)-考试题库系统的设计与实现.doc_第2页
毕业设计(论文)-考试题库系统的设计与实现.doc_第3页
毕业设计(论文)-考试题库系统的设计与实现.doc_第4页
毕业设计(论文)-考试题库系统的设计与实现.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

题 目: 考试题库系统的设计与实现 院 系: 西南交通大学网络教育学院 专 业: 计算机科学与技术 姓 名: x x x 指导教师: x x x 西 南 交 通 大 学 网 络 教 育 学 院院系 西南交通大学网络教育学院 专 业 计算机科学与技术 年级 xxx 学 号 xxxxxxx 姓 名 xxx 学习中心 xxx 指导教师 xxx 题目 考试题库系统的设计与实现 指导教师评 语 是否同意答辩 过程分(满分20) 指导教师 (签章)评 阅 人评 语 评 阅 人 (签章)成 绩 答辩委员会主任 (签章) 年 月 日 毕 业 设 计 任 务 书班 级 xxx 学生姓名 xxx 学 号 xxxxxxx 发题日期: 年 月 日 完成日期: 年 月 日题 目 考试题库系统的设计与实现 题目类型:工程设计 技术专题研究 理论研究 软硬件产品开发一、 设计任务及要求1按照某学院教务部门管理考试信息系统的需求分析及总体设计方案。 2考试管理包括 用户管理、试题管理、试卷管理、登录用户权限管理、用户注册管理等几个方面 。 3采用Access数据库,使用Delphi6.0 开发工具实现本需求分析所涉及的功能,保证软件能够正常使用 二、 应完成的硬件或软件实验 用Delphi工具开发系统,并进行系统测试。 三、 应交出的设计文件及实物(包括设计论文、程序清单或磁盘、实验装置或产品等) 毕业设计、毕业论文、含毕业设计论文和源代码的光盘 四、 指导教师提供的设计资料1电子稿件和电子图书 2朱振元编著 Delphi面向对象程序设计及其应用 西安电子科技大学出版社 3吕伟臣编著 Delphi入门与提高 清华大学出版社 五、 要求学生搜集的技术资料(指出搜集资料的技术领域)1软件工程方法资料。 2考试题库系统开发资料 3Access 、Delphi6.0 资料 六、 设计进度安排第一部分 熟练课题,收集、整理课题相关资料 ( 1 周)第二部分 系统需求分析与总体设计 ( 2 周)第三部分 熟悉系统实现平台:熟练掌握delphi6.0及Access ( 2 周)第四部分 详细设计、编码、测试 ( 3 周)第五部分 毕业设计论文文档编写整理 ( 2 周)评阅及答辩 ( 1 周)指导教师: 年 月 日学院审查意见:审 批 人: 年 月 日诚信承诺一、 本设计是本人独立完成;二、 本设计没有任何抄袭行为;三、 若有不实,一经查出,请答辩委员会取消 本人答辩资格。承诺人:年月日目 录摘 要IAbstractII第1章 前 言11.1 课题的来源和目的11.1.1 教育信息化的趋势11.1.2 传统的考试活动21.2 开发工具的选择21.2.1 Delphi简介21.2.2 Access 简介41.2.3 C/S 简介5第2章 系统设计72.1 功能设计72.2 数据库设计82.3 界面设计82.4 数据文件结构82.4.1 考试模板基本表82.4.2 学生模板基本表9第3章 系统实现93.1 功能模块103.2 注册功能的实现103.3 登录功能的实现113.4 数据库功能的实现133.5 Word字表处理功能的实现13第4章 考试系统的流程介绍17第5章 组卷策略19结 束 语21致 谢23参考文献24附 录25西南交通大学网络教育毕业设计(论文) II摘 要目前考试系统越来越被人们所重视,它可以为院系教务部门的决策制定提供强有力的数据支持。为此,作者开发了考试题库系统,以现代计算机技术为工具来管理学生的考试进程,方便教师和管理考试人员的工作。本系统探讨数字电子技术基础课程无纸化考试系统的设计方法,并加以实现,主要负责生成试卷和管理题库。用户根据不同的权限访问系统,对试卷的编码、生成等信息进行日常维护,并能生成试卷供学生测试。从数据库的安全性出发,根据需要可对数据库或数据表中的信息进行备份和恢复,以防止因不慎丢失数据而给用户造成不必要的麻烦。本系统在设计过程中以人为本,充分考虑了用户的需求,界面力求简单;使用了Delphi6.0开发前台应用程序,采用Access2000为后台数据库开发工具,它是一套完整的基于C/S考试系统。包括考生登入、考生退出、文字录入、数据库操作、Word字表处理等主要模块。系统具有维护简单、使用方便等特点,可应用于数字电路技术基础的教学中。关键词:考试题库系统, Delphi, Access, 功能模块,无纸化考试AbstractNow, people pay more attentions to the examination system. It can provide strong data support for the education administration department to make decisions. As result, the author exploited the examination database system, it uses the modern computer technology to manage the students examination course, and it is quite convenient to the work of teachers and examination managers. This system designed and realized the ways of the no-paper testing systems about the course . It mainly provides the function to create the test papers and manage the database. The users can visit the system according to the different limitation, and make the daily maintenance to the information of the test papers coding and creating. And whats more, the system can create test papers for the testing of the students. Considering the databases safety, it can backups and resumes the information of the database or the data lists according to requirements, in order to avoid making unnecessary troubles because of carelessly losing data. In the design process, this system sees the people as its center, considers fully the users requirements and tries its best to make the interface simple. This system used Delphi 6.0 to exploit foreground application, and used Access 2000 to exploit background database. It is a suit of whole examination system which is based on C/S system. It includes the main modules of the students entering, the students exiting, inputting words, database operations WORD and so on. This systems characteristic is easy maintenance, convenient use etc, and it can apply for the teaching of the numeral electronic technique basic.Keywords:system of examination, Delphi, Access, functional module,non-paper examination西南交通大学网络教育毕业设计(论文) 第 6 页第1章 前 言本文介绍的无纸化模拟测试系统的实现方式,并采用面向对象的开发工具Delphi来实现系统的功能,系统的主要特点如下:1. 系统的答题界面美观合理,答题方式方便灵活,系统采用一套可视化的答题组件接受答题信息,而每一答题组件都是根据试卷中试题的题型动态生成的,答题时随试卷中的当前试题的变化而改变。2. 系统提供了“题库保存”功能,提供“题库打印”功能。3. 系统具有“考前设置”“考生认定”等一系列的控制功能及“答题”“参考答案”等一系列的处理功能。面向教师的功能和面向考生的功能分别设置在服务器端和客户端,功能完善,可靠性和执行效率较高。1.1 课题的来源和目的1.1.1 教育信息化的趋势以计算机和现代网络技术为特征的现代信息技术极大地促进了社会经济的发展,也引发了一场知识和信息的革命。自20世纪90年代以来,国际教育界出现了以信息技术(IT)的广泛应用为特征的发展趋向,国内学者称之为教育信息化现象。什么是教育信息化呢?教育信息化是指以现代信息技术为基础的新教育体系,包括教育观念、教育组织、教育内容、教育模式、教育技术、教育评价、教育环境等一系列的改革和变化。其主要特点是在教学过程中广泛应用以电脑多媒体和网络通讯为基础的现代化信息技术。教育信息化使现行的教育方式面临着前所未有的挑战。为了迎接新世纪的挑战,国务院转发了面向21世纪教育振兴行动计划,教育部将按照统一规划的原则,分三个层面推进教育信息化:第一个层面是以多媒体计算机技术为核心的教育技术在学校的普及和运用;第二个层面是网络的普及和应用,利用网上资源提高教学质量;第三个层面是开办现代远程教育,建设并提供大量的网络资源,不断满足社会日益增长的终身教育需求。我国的教育科研网经过十多年的建设,已初具规模,但是在此基础上的网络资源利用率并不高,很多可以用网络基础设施及现有的硬软件条件实现的教学过程仍然沿用传统的方式,这无疑是对现有网络资源的浪费,追根究底,主要是因为与教学相关的应用系统的开发还比较匮乏。1.1.2 传统的考试活动我国近年来在实行教学体制的改革,对检验教师教学效果和学生学习效果的手段也一直在探讨中,但是在现在以及将来的一段时间内,教师出卷学生答卷模式仍然是大多数学校首选的手段。而且多数情况下还是沿用传统手工处理方式,传统手工方式对处理主观性试卷的有一定的优越性势,但又不可避免的将出现以下问题。1. 试卷缺乏随机性:因为在手工方式下,由教师手工编写具体的试卷,其中的每道试题均由教师指定,每次考试只有有限的一两套试卷,对于每个考生来说缺乏随机性,这就有可能发生下面两种情况,一种就是试卷在从教师向学生传递的过程中发生泄密,因为这个传递过程要经历好几个环节;另外一种则是在考试过程中难以从技术上避免作弊行为的发生,因为在多数情况下某门课程的所有考生都面对内容,形式完全相同的一套试卷,虽然现在有的考试采取了A/B卷的方法,但是仍不能算是一种行之有效的方法。2. 教师的工作量极大,负担重:这主要表现在出卷环节和评卷环节上。出卷时,教师一方面要总结、整理本学期的教学内容和归纳知识要点,另一方面还要手工出题组织试卷。考试完毕后,学生返回的试卷均要由教师手工评阅评分,最后还要由教师登记分数、讲评试卷。可见教师在整个考试过程中的工作量大,工作效率不高。3. 考试场所缺乏灵活性,考生必须在统一规定的考试地点进行考试(有时甚至具体到考试座位),这对本地考生可能问题不大,但有时却给外地考生带来了很大的不便。而且,每个考场必须由专门监考人员管理,这也是一笔不小的人力资源开销。4. 此外,这种方式无法适应现代远程教育的需要。本文所讲到的考试系统即是考虑到学校用传统的手工方式处理考试活动的不足,旨在用现代信息技术将考试活动纳入到学校的教育信息化系统的建设中,以充分利用网络资源来共享学校的教学资源。这也是本课题的目的所在。1.2 开发工具的选择1.2.1 Delphi简介Delphi是面向对象的可视化编程工具,利用该工具既可以开发系统软件,也可以开发包括数据库软件在内的各种应用程序。Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了Microsoft Windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-Oriented Language)、当今世界上最快的编辑器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用Delphi开发应用软件,无疑会大大地提高编程效率,而且随着应用的深入,您将会发现编程不再是枯燥无味的工作Delphi的每一个设计细节,都将带给您一份欣喜。其主要特点有:1. 集成化的开发环境设计功能:可以在一个集成的环境中完成应用程序的开发、测试和维护。2. 优秀的界面设计功能:Delphi提供了大量的用于设计界面的控件,用它们可以设计出各种优秀的用户界面。而且,Delphi还可以自动生成众多的定制界面,极大地简化了界面设计工作。3. 强大的数据库功能:Delphi提供了许多与数据库相关的控件,用它们可以快速开发功能强大的数据库应用程序。Delphi中内置的数据库引擎支持访问Paradox、AccessFoxpro、dBase、Informix、Oracle、Sybase以及SQL Server等多种数据库。4. 支持Internet/Internet开发:Delphi的Client/Server版本提供了几个用于开发Internet/Internet应用程序的组件,这些组件可以处理与Web服务器的所有通信服务。5. 支持ActiveX控件:Delphi提供了创建ActiveX控件的向导。创建的ActiveX控件可以用于其他开发工具,如C、Java、Visual Basic以及PowrBuilder等。Delphi实际上是Pascal语言的一种版本,但它与传统的Pascal语言有天壤之别。一个Delphi程序首先是应用程序框架,而这一框架正是应用程序的“骨架”。在骨架上即使没有附着任何东西,仍可以严格地按照设计运行。您的工作只是在“骨架”中加入您的程序。缺省的应用程序是一个空白的窗体(Form),您可以运行它,结果得到一个空白的窗口。这个窗口具有Windows窗口的全部性质:可以被放大缩小、移动、最大最小化等,但您却没有编写一行程序。因此,可以说应用程序框架通过,为用户应用程序的开发打下了良好的基础。Delphi已经为您做好了一切基础工作程序框架就是一个已经完成的可运行应用程序,只是不处理任何事情。您所需要做的,只是在程序中加入完成您所需功能的代码而已。面向对象的程序设计(Object-Oriented Programming,简记为OOP)是Delphi诞生的基础。OOP立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进Windows编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言。对象并不与传统程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。而Delphi是完全面向对象的,这就使得Delphi成为一种触手可及的促进软件重用的开发工具,从而具有强大的吸引力。一些早期的具有OOP性能的程序语言如C+,Pascal,Smalltalk等,虽然具有面向对象的特征,但不能轻松地画出可视化对象,与用户交互能力较差,程序员仍然要编写大量的代码。Delphi的推出,填补了这项空白。您不必自己建立对象,只要在提供的程序框架中加入完成功能的代码,其余的都交给Delphi去做。欲生成漂亮的界面和结构良好的程序丝毫不必绞尽脑汁,Delphi将帮助您轻松地完成。它允许在一个具有真正OOP扩展的可视化编程环境中,使用它的Object Pascal语言。这种革命性的组合,使得可视化编程与面向对象的开发框架紧密地结合起来。1.2.2 Access 简介Access2000数据库管理系统是Microsoft Office2000套件的重要组成部分,是Access的最新版本,可在Windows xp环境下运行。Access2000适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access2000不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。 数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的)是一串文字或数字流。数据库中的数据可以是文字、图象、声音等。 Microsoft Access是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。每个表都有N个记录组成,一个记录占一行,每一个记录由实体的基本属性的字段组成。表与表之间可以建立关系(或称关联,连接),以便查询相关联的信息。Access数据库以文件形式保存,文件的扩展名是MDB。 Access 2000数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。表(Table) 表是数据库的基本对象,是创建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。 窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。 报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。 宏(Macro)宏相当于DOS中的批处理,用来自动执行一系列操作。Access列出了一些常用的操作供用户选择,使用起来十分方便。 模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用Visual Basic编程。与Access 以前的版本比较,Access2000新增了许多功能,字段类型增加了OLE对象和超级链接,特别是与Internet的融合,在数据库中可以直接链接到指定的Web页面或网络文件,也可以把Web页面上的表格导入到数据库。Access 2000可以方便地利用各种数据源,包括dBASE, FoxBase,FoxPro,Excel,Word 等。Access 2000增加了数据库访问的安全机制,可对表一级设置访问许可权。Access 2000还可以方便地利用FoxPro数据库、Excel电子表格的数据,还可以和Word混合使用,打印通用信函或信封。在安装Access 2000后,在“程序”菜单中会出现Microsoft Access项,单击“开始”|“程序”|“Microsoft Access”,启动Access 2000。启动后会出现一个对话框,对话框中有两个组合框,如果要新建一个数据库可以选择“空数据库”或“数据库向导”选项,如果要打开已存在的数据库,则选择“打开已有数据库”选项,并选择要打开的数据库文件,然后单击“确定”按钮。1.2.3 C/S 简介C/S模式即客户机/服务器(Client server)体系结构是当前非常流行的计算机体系结构。在这种体系结构中,客户机提出请求,服务器对客户机的请求作出回应。在客户机/服务器体系结构中,客户机负责管理用户界面、接收用户数据、处理应用逻辑、生成数据库服务请求,然后将这些请求发送给服务器,并且接收服务器返回的结果,最后再将这些结果按照一定的格式返回给用户。服务器接收客户机的请求,处理这些请求,并把处理结果返回给客户机,这些处理结果包括访问数据库的结果数据和执行状态例如成功或失败。 在典型的C/S数据库应用中,数据的储存管理功能,是由服务器程序独立进行的,并且通常把那些不同的(不管是已知还是未知的)前台应用所不能违反的规则,在服务器程序中集中实现,例如访问者的权限,编号不准重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)这背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序可以变的非常“瘦小”,麻烦的事情,都交给了服务器和网络。在C/S体系的下,数据库真正变成了公共、专业化的仓库,受到独立的专门管理。西南交通大学网络教育毕业设计(论文) 第 18 页第2章 系统设计2.1 功能设计系统的开发,主要包括后台数据库的建立和维护,以及前端应用程序的开发两个方面.前者要求建立起资料一致性、完整性强和资料安全性好的数据库;而后者则要求应用程序具有功能完备、易使用等特点.经过分析,我们使用Borland公司的Delphi6.0所提供的各种面向对象开发工具,尤其是资料窗口这一方便而简洁的操纵数据库的智能化对象.采用Access2000进行后台数据库的设计,建立了DZJS.mdb数据库,放置2张不同用途的表,用于存放考生登录信息、题库信息等. 考生通过系统提供注册界面,输入用户名和密码进行注册,考生注册后系统会自动把注册信息保存到数据库的用户表格中供管理员操作;通过登录界面,考生输入正确的用户名和密码,即可登录到考试系统,考生登录后,系统自动为其建立一个考生文件夹,并分别从各类题库中随机抽取考题,形成一份试卷. 系统的功能分布在服务器端与客户端的计算机上,在服务器端设置面向教师的功能,在客户端设置面向考生的功能。服务器端应用程序的主要功能如下:1. 维护 对课程的题库进行初始装入和日常维护,对系统中的其他数据库如用户表进行维护。此功能只有超级管理员才可以进行增、删、改、查询。2. 选题 系统提供指定选题,并提供试卷、答卷的打印功能。 3. 开考 作开考前的准备工作,包括设置考试的相关信息如题目的难易程度等。系统分为难、低二个档次的试题供考生选择。题型选择有选择题,计算题和分析题。客户端应用程序的主要功能如下:1. 认定 考生在进入系统时必须输入考生的相关信息,如用户名、密码。未进行注册的考生不得进入系统参加考试,考生注册后系统自动把此信息录入到用户表的数据库中。 2. 答题 考生经系统确认进入考试环境后系统即在屏幕上显示相应的试卷并提供组件。答题完毕退出时,系统提示考生是否保存次试卷。 3. 自测 学生可以针对自己学习的特点,从试题库选择试题,形成针对性的试卷进行测试,并给出标准答案供考生参考。2.2 数据库设计一级考试系统的规模较小,故只建立一个数据库(DZJS.mdb).在此数据库基础上,建立考生登录情况表、操作题题库、选择题题库、数据库题库,Word题题库、在数据库连接方面,采用了Delphi6.0附带的Borland数据库引擎ADO.使用ADO的ADO管道连接用MSAccess设计的后台数据库,建立一个名为DZJS的数据源.在系统的OLEcontainer中放入访问数据库的控件,将其ADOconnction指向DZJS。 系统中主要的数据文件如下: 1. 试题库:用于存放课程的试题,试题库的结构由试题的属性即科目、编号、类型、难度、分值、内容、答案和文本形式等字段组成。 2. 考生库 用于存放考生的信息包括用户名、密码。2.3 界面设计为了验证考生身份,设计了一个登录界面,考生登录以后,直接到试卷编辑界面。这样的好处是方便简捷。2.4 数据文件结构2.4.1 考试模板基本表试卷模板表用来记录一份试卷的基本信息,包括所选课程、难度、试题类型等。如表2-1表2-1 考试模板基本表字段名类 型长 度说 明IDInt4自增型SCOREInt50分值设置TYPE_1Char8题型DIFLEVELChar8难度SUBJECTChar1考试类型(课程)BLOBDATAOLE20数据流EXTChar3文本形式2.4.2 学生模板基本表该表由系统动态产生,主要存储考生的基本信息,包括用户名、用户密码等。如表2-2表2-2 学生模板基本表字段名类 型长 度说 明IDint4用户名PASSWDChar16用户密码QUESChar4提示问题KEY_1Char6提示答案第3章 系统实现3.1 功能模块1注册模块. 注册账号和密码自动存入数据库中。2登录模块 用户验证即正确输入用户名和密码如果输入的数据与数据库中数据一直,系统将提供登录成功。3数据库操作模块.自动从数据库题题库中抽取题目,供考生完成建立数据库文件、编辑等一系列操作。4Word字表处理模块.从Word题题库中抽取题目,使用OLE技术自动打开Word,让考生在Word环境中完成操作。3.2 注册功能的实现procedure TForm3.Button1Click(Sender: TObject);varID,MA :string ;s : string;begin if trim(edit1.Text) then ID := Trim(Edit1.Text) else showmessage(请输入您的帐号!); if trim(edit2.text) then MA := Trim(edit2.text) else begin showmessage(请输入您的密码!); exit; end; if trim(edit2.text) trim(edit3.text) then begin showmessage(密码和确认密码不一致!); exit; end;try s:=select * from use where id =+ Trim(edit1.text)+ ; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add(s); ADOQuery1.Open;exceptend; if not(ADOQuery1.IsEmpty) then begin showmessage(该帐号已经存在!) end else begin ID:=edit1.Text; MA:=edit2.Text; adocommand1.CommandText:=inserTintouse(id,passwd) values(+ID+,+MA+); adocommand1.Execute; showmessage(添加成功); end;3.3 登录功能的实现 procedure TForm1.Button3Click(Sender: TObject);varID,MA :string ;s : string;begin if trim(edit1.Text) then ID := Trim(Edit1.Text) else showmessage(请输入您的帐号!); if trim(edit2.text) then MA := Trim(edit2.text) else begin showmessage(请输入您的密码!); exit; end;try s:=select * from use where id=+ Trim(edit1.text)+ ; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add(s); ADOQuery1.Open;exceptend; if ADOQuery1.IsEmpty then begin showmessage(您输的帐号不存在!) end else begin if MA = Trim(ADOQuery1.FieldByName(passwd).AsString) then begin form2.Show; form1.Hide; end else begin showmessage(您输入的密码不正确!) end; end; 3.4 数据库功能的实现 客户端的应用程序要访问服务器端的数据库,例如在进行考生认定时要访问用户表;在进入答题界面时要访问试题库。 系统采用ADOconnection实现与数据库的直接连接,即可以完全由相关的数据连接组件实现连接而无需另外的支撑程序。方法如下:1. 择ADOconnection控件,双击此控件出现如下图3-1、图3-2所示 图 3-1 图 3-22. 配置Object Inspecter中的connection的属性为true,loginsprompt的属性为false。3. 系统采用ADOQuery实现查询功能3.5 Word字表处理功能的实现主要介绍一下OLE自动化:OLE自动化是一种为WINDOWS设计的交互进程通信机制,它让一个应用程序驱动或自动完成另一个应用程序,如在C+中创建EXCEL中的表格等。它克服了链接和嵌套中存在的缺点,即无法用编程手段对对象进行控制。实现了对OLE组件的编程式控制。OLE自动化包括两部分应用程序:一个是把OLE组件暴露出来使之可控制的应用程序,叫做OLE自动化服务器;另一个是利用OLE服务器提供的组件,对该对象进行控制操作的应用程序,叫做OLE客户。每个OLE对象都有属性(Property)和方法(Method),OLE自动化服务器的编写者决定哪些属性和方法将通过OLE自动化暴露出来,而私有对象对于外部用户来说是不可见的。OLE客户编程人员只需知道包含对象的应用程序的名称、对象的类的名称和想要使用的属性和方法的名称,就可以使用自动化服务器了。OLE自动化服务器有两种创建方法:即进程内服务器和进程外服务器。进程内服务器是与客户应用程序在同一进程内运行,进程内服务器一般以DLL文件的形式存在;进程外服务器则作为一个单独的进程,在自己的地址空间中运行,一般以EXE文件的形式存在。此系统是在Delphi中通过Ole的方法控制MS Word,主要采用的方法是通过位于System面板上的Olecontainer控件用于在应用程序的窗口上创建一个OLE用户区域,用于实现Delphi与外部某个对象的接口,当然也可以实现Delphi与Word对象的接口。用此方法是最简单的Ole嵌入,能够直接将Word文档调用,只需要调用TOleContainer的Run方法就可以将word文档直接启动。且这样启动的Word文档与Delphi程序是一个整体(从界面上看),但是它存在不可克服的缺点,即不能通过Delphi控制word文档,所以不能实现将灵活操纵word的目的。在应用程序的实现过程中,将会运用到大量的数据控件,这必然要调用相应的数据组件.于是,就需要在各个窗体中添加数据组件.这可能会造成组件的混淆.在Delphi6.0中提供的OLEcontainer,可以很好的解决这个问题,将所有的数据组件都放到OLEcontainer中.当其它窗体需要访问数据库时,只要在其单元文件中引用OLEcontainer的单元文件,就可以直接访问到数据库中的数据了.本应用程序中OLEcontainer其设计如图3-3所示图3-3下面是其实现程序:procedure scdsBLOBDataBeforePost(DataSet: TDataSet);procedure scdsBLOBDatBeforePost(DataSet: TDataSet); private function GetMaxID : Integer; Private declarations public Public declarations end;var dmolecontainer: Tdmolecontainer;implementation/uses Unit2, Unit1, Unit4, Unit7, Unit8, Unit9, Unit10, Unit3;$R *.dfmfunction Tdmolecontainer.GetMaxID: Integer;begin try scdsMaxID.Open; try Result := scdsMaxID.Fields0.Value + 1; except on Exception do Result := 1; end; finally scdsMaxID.Close;end;end;procedure Tdmolecontainer.scdsBLOBDataBeforePost(DataSet: TDataSet);begin if (VarIsNull(DataSet.FieldByName(ID).Value) then DataSet.FieldByName(ID).Value := GetMaxID;end;procedure Tdmolecontainer.scdsBLOBDatBeforePost(DataSet: TDataSet);begin if (VarIsNull(DataSet.FieldByName(ID).Value) then DataSet.FieldByName(ID).Value := GetMaxID;end;end. 第4章 考试系统的流程介绍考试系统首页是登录界面,打开Project2即可看到如图4-1所示的考试登录书面。但是考生必须先注册得到系统验证后才能进行登录工作如图4-2,当应试学生进入到考试首页,点击“Go”后系统会先要求你输入用户名和密码后才会进入考试的第二页;此后,系统就直接进入考前设置界面如图4-3所示,并要求你键入各题型的数

温馨提示

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

评论

0/150

提交评论