Delphi软件

2024-05-27

Delphi软件(共3篇)

Delphi软件 篇1

1 开发工具简介Delphi 7.0的特点

Delphi是Borland公司出品的开发工具, 在众多的开发工具中, 我们为什么要选择Delphi呢?因为Delphi具有众多其它开发工具所没有的优点:语言的高效、编译的高效、执行的高效、维护的高效。基于以上理由, 我们毫不忧郁的选择了Delphi做为我们的开发工具!!

1.1 数据库连接方式选择

Delphi连接数据库的主要方式有两种:一是:BDE, 二是ADO。现在我们来大致比较一下这两种技术的优缺点:

BDE (Borland Database Engine) 是Delphi颇具特色的数据库连接管理技术。凭借窗体和报表, BDE可以访问诸如Paradox, d BASE, 本地Inter Base服务器的数据库, 也可访问远程数据库服务器上的数据库, 如Oracle, Sy Base, Informix等C/S数据库中的数据库, 也可访问经ODBC可访问的数据库管理系统中的数据库。

ADO (Active X Data Objects) 是微软提供的一项技术。通过ADO, 可以方便的访问各种类型的数据库, 特别是OLEDB数据库。ADO已成为访问数据库的新的标准接口。从Delphi 6.0开始Delphi添加了对ADO的支持, 以便让用户能迅速实现对终端用户用来做商业决策的数据库的一致性访问, 结合Delphi本身的开发式数据组件结构, 程序员可以很快地建立应用程序, 用来把自己的商业数据库通过Internet发送给客户, 最终用户以及整个销售环节。通过ADO, Delphi 7.0也能让用户快速访问关系或非关系数据库以及E-Mail和商务文件系统。

这两者提供了几乎相同的功能, 在进行产品开发时, 势必要做一个精心的比较。虽然ADO技术提出的时间不长, 并被定位为工业标准的, 而且其在性能上由于当前没有良好的数据库引擎支持, 其性能还不够完美, 但是, 我们应该要注意到Borland公司已经宣布停止发展BDE了, 其性能被ADO超越也是迟早的事, 因此, 在开发长期应用的产品时, 推荐采用ADO技术。这样还有另一个好处是, 在进行产品分发时, 可以避开大量BDE的链接库DLL的分发。

基于以上原因我们选择了ADO做为我们的数据库访问组件。

2 软件实现

2.1 OOP简介

每一个软件开发人员都会经常听到, 看到“面向对象”这个词, 程序员也时常把它挂在嘴上。那么什么还是真正的“面向对象”?什么是面向对象的编程?是不是写几个类就算面向对象了?为什么要面向对象?“面向对象是一种思维方式, 一种方法论”, “结构化编程” (SP) 是一种编程方法, 是从计算机的视角来抽象问题的方法。而“面向对象编程” (OOP) 也是一种编程方法, 只不过它是从更接近真实世界的视角来分析问题, 使用更接近人们理解真实世界的方法来抽象问题, 这种方法称为“面向对象”。

“面向对象”这个词代表的是一种认识世界, 分析问题, 解决问题的方法, 因此它是一种方法论。而面向对象编程则是将这种方法应用于程序设计的方法。当你会使用面向对象的方法去思考, 用面向对象的模式支分析和解决问题的时候, 才是真正的“面向对象”了!!

“面向对象”最主要的特性有三个:

⑴继承性。Delphi提供大量的可被二次开发的类。每个类都可被继承。

⑵封装性。Delphi的封装性主要由类的私有域和保护域来实现的。

⑶多态性。Delphi的多太性主要是通过虚拟方法和动态方法来实现的。

2.2 开发的关键技术⑴VBA编程技术

Visual Basic for Applications (简称VBA) 是新一代标准宏语言。在没有VBA以前, 一些应用软件如Excel, Word, Access等都采用自己的宏语言供用户开发使用, 但每一种宏语言都是相互独立的并且它们之间是互不兼容的。这导致了应用软件之间不能在程序上互联。找到一种可被所有的Microsoft可编程应用软件所共享的通用宏语言是Microsoft公司长期追求的目标。VBA作为新一代的标准宏语言具有了跨越多种OFFICE应用软件并且控制应用软件对象的能力。

3 系统测试

测试在软件开发过程中一直都是备受关注的, 即使在传统的软件工程中, 也有一个明确、独立的测试阶段。随着软件危机的频频出现以及人们对于软件本质的进一步认识, 测试的地位得到了前所未有的提高。测试已经不仅仅局限于软件开发中的一个阶段, 它已经开始贯穿于整个软件开发过程, 人们已经开始认识到:测试开始的时间越早, 测试执行的越频繁, 所带来的整个软件开发成本的下降就会越多。Extreme Programming更是把测试推到了极限的位置, 一切软件开发活动都要从首先编写测试代码开始。

为了使本软件运行更加稳定, 我对它进行了全面的测试, 测试分为二部分来进行, 一是:界面测试;二是功能测试。

首先是界面测试, 为了使软件在不同的的操作系统平台上运行界面能保持原来的风格。我的开发平台如上介绍。我把完整程序拷贝到我同学的机子, 同学机子的相关配置如下:Windows 7+14.5寸笔记本显示器;程序运行界面正常, 界面上的字体等设置都保持得相当好。没有出现类似字体变形的情况!第二个平台:Windows XP+19寸显示器, 测试结果:字体有些不正常。后来在网查找了很多相关的资料, 得出这是由于Window XP和我的开发平台的操作系统Window 7的字体集不一样造成的。解决方案是:把软件的字体设置成:宋体+9号, 字符集使用:CHINASE_GB2312。至此软件的界面测试顺利完成。

二是进行功能的测试。我的功能模块主要是试卷生成。而试卷生成后都是输出到Microsoft Office Word里。实际测试结果如下:在Windows 7+Microsoft Office 2003的平台下, 试卷功能里的预览功能不能用了。界面停留在“正在链接Microsoft Office Word......”这里, 一看就知道没有办法和Microsoft Office Word链接了。换平台测试, 这回是在Windows 7+Office 2007, 程序正常运行了包括试卷预览等功能都正常运行。再换平台:Windows XP+Office 2007程序同样完全正常运行, 由此可以总结出在低于Office 2007的平台下程序无法和办公软件交互。至此到这里在功能的测试上也已经比较圆满的完成了!

4 系统维护

由于在开发本程序的时候我就特别注意软件的后续维护和再开发上。因此极努力的想把它开发成一个强内聚、弱耦合、接口明确、意图明晰的软件。对于程序里的功能我尽力把它们封装在类的私有过程或私有函数里, 这样可以大大提高软件的内聚性, 在各个功能模块和窗体之间尽可能减少它们之间的调用关系, 以减少软件的耦合性。在软件设计初期我就预留了接口用于调用另一个同学的模块。为了保证两人开发出的功能模块能在最后能顺利地联合。在一开始我就预先编了一个公共的“数据模块”以提高软件连接数据库能高效共享。并且给他规定一些如控件的命名规则, 代码的规范等。这些都大大提高了软件后续的可维护性。

摘要:一般情况教师想出一份试卷, 要么到庞大的题库里一道一道的把题找出来, 或是从几本相关的书里把题一道一道挑出来。这样即费时又费力, 而且很难保证试题的覆盖面和把握好试卷的难度。正是为了能够帮助教师轻松的出一份高质量的试卷而开发了本软件。在开发本软件之前, 正是我努力提高自己的Delphi开发水平的时期。因此我选择了Delphi做为我的开发工具, 然而这次开发的软件和以前不一样。最主要的区别在于这个软件要以Microsoft Office Word做为试卷的终端输出。而它们又是两个不同公司的产品。因而, 刚一开始我特别担心这个技术能否得到比较圆满的解决。在开发的过程中我不断的对VBA技术进行研究, 并且将它应用于这次的软件开发中。因而比较好的解决了Microsoft Office Word的接口编程问题。还有一个比较棘手的问题就是Delphi提供的控件都是很基本的, 而这次开发中要用到一个可以标记选中状态的树型控件, 在对Delphi的TtreeView的深入研究后确认它不能胜任这个任务。在深入研究Windows的消息机制和VCL框架对Windows消息机制的封装技术后我成功的修改了那个TCheckTree控件。在程序开发的后期测试中, 我充分利用各个同学电脑平台的多样性。

关键词:Delphi,VBA,题库

参考文献

[1]陈明.软件工程学教程.科技出版社, 2002.[1]陈明.软件工程学教程.科技出版社, 2002.

[2]萨师煊, 王珊.数据库系统概论.第三版.高等教育出版社, 2000.[2]萨师煊, 王珊.数据库系统概论.第三版.高等教育出版社, 2000.

[3]飞思科技产品研发中心.Delphi7数据库应用开发.电子工业出版社, 2003.[3]飞思科技产品研发中心.Delphi7数据库应用开发.电子工业出版社, 2003.

[4]飞思科技产品研发中心.Delphi6开发者手册.电子工业出版社, 2002.[4]飞思科技产品研发中心.Delphi6开发者手册.电子工业出版社, 2002.

[5]申旻.Delphi高手突破.清华大学出版社, 2002, 302.[5]申旻.Delphi高手突破.清华大学出版社, 2002, 302.

Delphi软件 篇2

经过这段时间的毕业设计,通过自己的努力和×老师耐心的`指导,张老师认真地指引我们进行系统的设计操作及编程实现。使这次毕业论文能够顺利的完成。我衷心的感谢张老师孜孜不倦,不辞辛劳的教导,也感谢验收教师不怨其烦地批阅。Delphi新一代面向对象的可视化快速应用程序开发环境。将成为生产过程自动化和信息管理系统解决方案的重要方式之一。这不仅使生产过程自动化系统的结构大为简化,降低了系统设备成本,提高了系统的可靠性和可维护性。而随着生产过程自动化和信息管理软件功能的日益丰富和增强,可以在不影响硬件系统设备更改的情况下,方便的提高生产过程自动化和生产信息管理的应用水平。

此次毕业设计使我加深了对Dephi在多媒体、数据库、串口技术方面的认识,对于电学方面也有了一定的了解,在利用串口线连接设备方面也有了很大认识。

Delphi软件 篇3

长期以来,在看病高峰期,病人在医院前拥后挤地站着等候就诊、秩序混乱。人工对病人就诊秩序进行管理存在很多缺点:管理效率低、劳动强度大、信息处理速度低而且准确率也不够令人满意。为了提高医院对病人就诊秩序的管理效率、减轻劳动强度、提高信息处理速度和准确性,为患者创造一个良好的公平、公正的就医环境,利用Delphi技术强大的数据库操作特性,为医院护士站提供了一种更先进、科学的服务系统——医院排队叫号系统。

2 系统目标

每个护士站配备1台客户端电脑,实现相应科室的排队数据的管理和查询,同时该电脑通过集线器和若干呼叫器连接在一起,每个医生配备1台呼叫器。当接诊病人时通过呼叫器发送呼叫命令到护士站管理电脑,护士站管理电脑在收到“呼叫”请求后,通过串口发送相应的就诊提示到显示屏并给出语音提示。

本叫号系统软件实现以下功能:正确录入、获取挂号病人信息;根据科室、专家坐诊时间、挂号类别等限制条件对就诊病人的队列进行管理;通过LED屏、功放、喇叭等硬件设备正确播报数据信息;正确响应呼叫终端的呼叫、登陆或注销请求;通过医生登陆或注销信息维护医生值班表。

3 系统模块划分

系统软件包括服务器接口软件和客户端管理软件2部分。服务器接口软件运行在系统的服务器上,客户端管理软件运行在护士站的管理终端上。服务器软件主要与医院原有的信息管理系统(Hospital Information System,HIS)衔接,实现数据的获取、管理、回复等功能;客户端管理软件主要实现数据的自分诊、人机交互、和外设通信等功能。客户端软件需要服务器软件协同工作,不同护士站间的客户端软件互不影响工作。

如图1所示,系统按照功能划分成了不同的模块,每个功能模块具有较高的独立性和封装性,模块和模块间通过交互数据协同工作。以划分的功能模块为基础,系统软件设计采用面向对象的分析方法和开发过程,方便了系统的后续维护和升级。

其中数据通信模块、呼叫器通信模块是整个设计的核心与难点。数据通信模块负责前台应用程序和后台数据库的连接和数据通信。所有对数据库的操作都经过该模块中转。该模块将前台软件和后台数据库隔离,保证两者的相对独立性,减少前台软件和后台数据库的连带关系,使其具有良好的可移植性,方便后续维护升级。图2利用UML统一建模语言(Unified Modeling Language)中的时序图来说明数据通信模块的流程,这里设定1个功能模块为1个角色(Actor)。

呼叫器通信模块的主要工作是:接收来自HUB的呼叫、登陆或注销请求命令包;完成数据包的解析,提交请求命令;接收响应数据,根据协议组成数据包;通过串口发送数据包到HUB。图3是UML中的时序图。

4 系统软件设计

4.1 数据库设计

现今数据库平台种类很多,一般的大型数据库通常采用SQL,ORACLE,SYSBASE等。系统的服务器承担着与IS系统、所有护士站客户端通信的任务,同时维护和存储着整个叫号系统的数据信息,因此对服务器的软件的稳定性、安全性要求较高。数据库管理系统使用微软的 SQL Server 2000 中文企业版。该数据库主要管理来自接口的当日挂号数据,含有接口数据表。

而此排队叫号系统客户端软件在单机上运行,鉴于微软公司的Access数据库作为桌面型数据库的代表,应用广泛。相对于那些大型数据库来说,结构简单、存取速度较快、创建、修改灵活、易于使用,所以客户端软件采用了Access数据库作为数据库开发平台。每个工作时段内,客户端定时向服务器索取挂号病人数据。该数据库共使用了7个表,它们分别是:挂号信息接口表、数据备份表、科室配置表、诊室配置表、医生配置表、终端配置表、值班表。

4.2 数据库访问技术的选择

在Delphi中构建数据库系统,建立连接对数据库进行访问的机制主要有BDE,ADO和dbExpress,在排队叫号系统客户端软件中,由于采用Access数据库综合比较后采用ADO访问机制。 ADO是Microsoft提供数据访问技术,是Microsoft发展了基于COM的数据访问规则和API访问的OLE DB技术,并对其进行了很好的封装,提供最新的数据连接技术。本系统主要使用ADO 组件的ADOConnection,ADODataSet和ADO Query三个组件。其中ADODataSet组件可以通过指定其ConnectionText属性,通过SQL语句经由ADOConnection,使用通用数据链接 (UDL) 文件来存储数据库连接的方式,获取数据库数据,通过DataSource组件送至DbGrid显示。ADOQuery组件通过SQL语句可以实现数据库数据的更新。具体设计框图如图4所示。

4.3 使用SQL语言开发数据库应用程序

在Delphi中是通过TQuery组件来实现对SQL语言支持的。而实现SQL编程的方法有静态SQL编程和动态SQL编程。本系统采用静态SQL编程。为了实现对数据库和数据对象的有效管理,Delphi为数据库开发专门编制3组控件。其中一组是Data Access(数据库访问控件)。

在Delphi中实现静态SQL编程的具体操作步骤如下:

(1) 在Data Access组件组中依次选用TQuery和TDataSource组件放置在窗体上(它们的名字分别是Query1和DataSource1);

(2) 把DataSource1的DataSet属性设为Query1;

(3) 通过设置Query1的SQL属性来实现静态SQL编程。

在Delphi中嵌入的SQL程序是TQuery组件的SQL属性里封装的一系列SQL语句的字符串。通常对数据的查询条件是在程序运行期间才决定的。

注意:为保证数据的安全性,在对SQL属性进行设置期间,数据集应处于关闭状态;TQuery组件的SQL属性只能包括1条SQL语句,所以在设置新的SQL语句之前要清除原来的SQL语句;SQL语句设置完毕后,可以通过SQL的Open或ExecSQL方法来执行。

4.4 串口通信编程

在Delphi开发工具内,可以使用汇编、Win32 API、控件等手段编程实现串口通信,系统采用第三方Delphi 串口控件SPComm 来实现串口通信。

实现PC 与HUB之间的数据收发需要以下4 个步骤:

(1) 初始化并打开串口

(2) 接收数据

OnReceiveData:procedure(Sender:Tobject;Buffer:Pointer;BufferLength:Word) 事件,当有数据输入缓存时将被触发,在这里对从串口收到的数据进行处理,即相应HUB的请求。Buffer 中是收到的数据,BufferLength 是收到的数据长度。

(3) 发送数据

WriteCommArray(pDataToWrite:PChar;dwSizeofDataToWrite:Word )方法是个带有布尔型返回值的函数,用于将一个字符串发送到写进程,发送成功返回 true,发送失败返回false。该函数有2个参数,其中pDataToWrite 是要发送的字符串,dwSizeofDataToWrite是发送字符串的长度。本系统利用该函数回复HUB。

(4) 关闭串口

comml.StopComm;

5 结 语

排队叫号系统作为医院信息管理的一个重要组成部分,从实际需求出发,对信息进行收集、传递、存储及加工处理,并能进行决策,将待诊病人管理微机化。该系统已在南京市某医院运行,运行状态良好,极大提高了管理效率。

参考文献

[1]张增强.Delphi 7数据库开发完全手册[M].北京:清华大学出版社,2003.

[2]熊勇,刘燕.Delphi串口通信编程[M].北京:人民邮电出版社,2001.

[3]罗小平.Delphi精要[M].北京:电子工业出版社,2004.

[4]周绪,管丽娜,白海波.SQL Server2000(中文版)入门与提高[M].北京:清华大学出版社,2001.

[5]刘艺.Delphi面向对象编程思想[M].北京:机械工业出版社,2004.

上一篇:竞赛辅导系统下一篇:电子贸易政策