本人下载使用的是CSDN中的Delphi7企业版,其注册号为:6AMD-PDJ686-APME9D-9CDR Key为:YVX-27C 运行环境为WindowsXP Pro SP2

Delphi是Borland的旗舰,他的VCL组件技术拯救了当时被微软一再压制的Inprise,深受人们欢迎。关于它的历史不再废话,我们程序角度来说,学Delphi最重要的部分有,Delphi7的集成开发环境熟悉,Object Pascal语法,用户界面设计技巧,多媒体应用,数据库开发,网络编程等方面。恩,根据进度,某志准备使用7天来进行初步的简单复习。

首先来简单复习一下Delphi最基本的IDE环境,设计窗体,管理器,编辑器等,最后说一下Delphi生成的文件。

在开始介绍时,我有说过,Delphi是建立在VCL上进行编程的,而VCL就是Visual Componment Library可视化组件库。所以使它拥有了优秀的可视化的程序开发环境,而基与Object Pascal语言的RAD(Rapid Application Development)快速应用程序开发工具,更使它成为一款非常快速,高效的工具,能够轻松开发出基于Windows环境下的各类应用程序。

IDE概述:

我们使用任何一款可视化开发环境时,我们的时间主要放在两个不同部分:可视设计器和代码编辑器。其中可视编辑器中应该允许程序员对每个组件进行操作,并根据需要对组件的一些属性进行控制。代码编辑器应当是编写代码的地方,我们经常使用代码来响应用户的操作事件,对其进行内部处理,当然比较多的涉及数据库。

Delphi的特点有:

1:强大的可视化编程环境。它的窗体设计器是建立在一个面向对象的框架结构之上的,我们对基类的所有改动,都会传递到其派生类之上。

2:优秀的调试器。它的调试器功能支持设置断点,监控,DLL,包调试,远程调试,过程关联等,功能和VC++一样强大。

3:编译高效。我们需要知道,Delphi是基于Object Pascal研发的,而Pascal编译器又是以编译速度快而闻名的,所以Delphi同样拥有编译速度快的优势。

4:丰富的VCL可视化组件库。在程序设计时操作组件,创建组件,面向对象技术来继承其他组件,可以大大提高Delphi开发效率。

5:支持两个库。Delphi允许用户使用两个不同的可视库,包括VCL和CLX。在我们创建项目时,选择CLX Application时,就是命令创建一个新的基于CLX的可移植应用程序,它是跨平台组件库,我们可以通过Kylix重新编译自己的代码。使其可以运行到Linux系统之下。

版本说明

任何软件都有不同的版本号,Delphi也不例外,不仅有Delphi2,3,4,5,6,7……10 Lite,即使在同一版也有不同的版本。

个人版:针对一些不常用Delphi的程序员。该版本不支持数据库编程,也不支持Delphi的高级特性。

专业版:针对专业开发人员了。支持ADO数据库编程,基本的Web服务器支持WebBroker,以及一些外挂工具的支持。

企业版:针对开发企业应用的开发人员,包括所有的XML和高级WEB技术,CORBA支持。

体系版:企业版上更添加了Bold的支持,可以支持用UML模型驱动应用程序。

我们在复习时候以企业版为准,所以,个人版的Delphi是远不能满足需求的。

IDE使用技巧:

这里不再详细介绍每个工具模块功能了,其实只要简单熟悉一下就明白了。主要分为最上面的菜单栏,左上的工具栏,对象树形查看器,右上的组件面版,左下的对象监视器,以及最大的两快,窗口设计器,代码编辑器。

在这里仅说一些容易出现的问题和应对技巧:

  1. 假若我们在设计时和调试时使用的窗口设置区别很大,又或者我们一台电脑由两位程序员使用,他们对窗口的设置要求不同,此时我们需要对窗口布局进行重新的安排。Delphi允许我们保存一套自己定义的IDE窗口排列顺序习惯,并且很容易使用它,我们可以在设计时使用一套,调试时使用一套窗口,这将很有利于我们快速的进行工作。

设置方法,View->Desktops,我们可以将Delphi界面设置信息保存到DST文件中,在bin文件夹下,实际上是一个ini文件。我们可以随时恢复它。

  1. 设置环境选项。在很多IDE设置时,我们甚至需要人工去设置环境变量。在Delphi中,Tools->Environments Options中可以对IDE环境变量进行控制自定义。也可以选择部分Internet页面文件使用非默认文件扩展名。

  2. 若某窗口被遮挡,隐藏到其他窗口下面难以找到时,则我们使用Alt+0的组合键或View->WindowList菜单可以获得一个当前Delphi的窗口列表,选择后可以打开。

  3. 若编译器有错误产生,通过View->Additional Message Info命令可以打开一个错误消息提示的消息。我们可以根据这些消息给予相应的处理,当然,我们还需要设置断点监视等来进行更准确的判断。View->DebugWindows值得我们看看。

  4. 代码自动生成功能。当我们在类声明中加入某函数声明后按下Ctrl+Shift+C键,可以自动生成一份空的函数定义代码。

  5. 和VC类似,输入一个对象名称,添加圆点等待会,会出现此对象的属性方法表。已经声明的函数,我们只要设置好函数名和左括号,则函数参数就会被显示。

  6. 自定义快捷摸版。例如,我们现在输入一个ife,再按下Ctrl+J就会出来一个判断语句的摸版选择,当然,若我们会频繁使用一系列代码,我们完全可以将其设置为一套快捷摸版,设置方法为Tools->Editor Options->Source Options->Edit Code Templates,这样开发人员可以根据自己需要来很容易的定制自己的摸版。该文件保存在DELPHI32。DCI文件中,很容易直接编辑。

  7. 和VC不同的是,我们若想进行多行缩进,仅仅多选按Tabel是无效的,需要同时按下Ctrl+Shift+I/U,呃,真是不方便

  8. 和VC一样,按下Alt键可以拖动鼠标选择矩形区。很舒服的功能,呵呵

  9. Diagram视图。在代码编辑窗旁边就是Diagram视图,它能显示我们组件间的各种关系,包括父子关系,链接属性,类属关系等,对于数据库集合组件,它支持主从关系的查找连接,用户可以为指定组件的文本块添加注释。Diagram不是自动创建的,必须我们将树状视图中将组件选择到图表中才会显示其关系。

  10. 当我们的窗体设计器中某控件很小被遮挡的话,我们可以通过树型结构来进行控制,除了使用鼠标移动各组件外,还可以Ctrl+方向键进行微调。或者使用Alt+鼠标也是进行微调。按Shift+方向键可以微调组件的大小,当然,我们以上操作都可以使用属性数值的调整来达到同样的目的。

  11. 若想将许多组件对齐,或者将其大小调整为一致,那么可以多选后,设置他们的Top,Left,Width,Height属性就可以了。按下Shift键再点选组件可以实现多选。 13:当我们将组件位置大小设置完毕后,可以使用Edit中的LockControls来阻止组件位置的变动。

  12. 由于组件之间有对应的树状关系,所以,剪切是不适当的,它会破坏组件之间的对应关系,而拖拽就不会改变其间的任何关系。

  13. 我们可以自由调整控件组的排列顺序,名称等,如果不大习惯英文的朋友,完全可以象某志一样将其一次性的整理为中文,以后使用起来方便多了,而且还可以同时显示更多的控件组,(因为中文通常比英文长度短>_<)修改方法为Component->Comfigure Palette

  14. 设置组件摸版:我们假如复制一个组件,那么我们会复制它的所有属性。但更强大且省事的办法是,创建一个组件的摸版,这样我们将可以复制它的所有属性和事件处理的源代码。Componment->CreateCompenentTemplate定制自己喜欢的优秀组件。这个组件摸版的信息都保存在一个DELPHI32。DCT文件中,我们无法直接对这个文件进行编辑,但是我们可以拷贝这个文件到其他的环境下,在注册表中Sofeware\Borland\Delphi\7.0\ComponentTemplate下添加CCLibDir条目,别人就也可以使用你定制组件摸版了。

  15. 但是上面所说的,假使某一Form使用了一套组件摸版,另一Form2也使用了该套组件摸版,我们假若需要同时修改这两个组件摸版的话,那需要在使用组件摸版之前对它进行修改,因为一旦我们将其定制到Form中之后,该组件则与其摸版脱离关系。若我们需要实时的对许多套同样的组件进行动态修改的话,就需要使用框架Frame。我们创建一个Frame,则先设计它之中的控件,并在事件处理器中添加相应代码。当框架准备好了之后,打开一个窗体,在其上放置Frame伪组件,它会象组件摸版一样复制到窗体中,但是不同的是,我们若修改源框架,该窗体中所有伪Frame组件都发生变化。

  16. Delphi编译文件时,会先将源文件编译成一个Delphi编译单元DCU,之后由链结器来执行合并更新,当然此时可能需要从VCL库中合并编译代码,第三步是将一些资源文件绑定到可执行文件中,这些文件包括项目的RES主图标文件和窗体的DFM文件。但是Delphi在编译时仅会编译被改动的文件,若我们对一些文件进行了人为的修改而不被Delphi编译器所知的话,它也不会进行重新编译的,所以此时报错的话,我们需要设置为全部文件的更新编译。Project->Build All。

  17. 我们可以创建组件摸版,框架,还可以创建整个窗口项目的摸版,只要在Project->AddToRepository添加窗口摸版就行了。呼,都说到这份上了,大家应该明白,下载到精美的Delphi窗体的话该怎么办了吧0 0

Delphi的优点有:

  1. 数据类型丰富(>_<某志咋就没觉得这是优点呢。。)
  2. 可读性强(恩,差不多了,感觉还不如Ruby)
  3. 支持结构化设计,也支持面向对象程序设计(呃,好多语言都支持吧)
  4. 编译速度快,效率高(的确是个优点)
  5. 可以进行模块化程序设计,程序可重复利用性高(- -看到上面某志说的一堆摸版就知道了)