第 1章 Delphi概述
内容提要
? Delphi简介
? Delphi 7 集成开发环境
? Delphi 的文件结构
? 简单应用程序实例
1.1 Delphi 简介
Delphi是 Borland公司推出的面相对象
的可视化编程环境,特别适合于快速规范
地开发 Windows应用程序。从 Borland公司
推出 Delphi 1.0至今,Delphi已经发展了 7代
产品,每一代都是伴随 Windows操作平台
的升级而升级。使用 Delphi,用户可以轻
松地进行各种复杂应用程序的开发。
1.2 Delphi的新特性
Delphi具有简单、高效、功能强大的特点,而
Delphi 7在以下几个方面又进行了加强,
1,企业应用的 MDA开发
2,可视化的快速 Web开发
3,内建的对 Linux的跨平台 支持
4.企业级的报表能力
5.免费的 DataSnap多层应用开发
6.Windows XP应用
1.4 Delphi 7的集成开发环境
Delphi 7 的集成开发环境( IDE)和 Delphi 以前
的版本基本一致。它把菜单、多个工具栏以及一组
窗口和应用程序设计在一起,将代码以事件的形式
与界面的每一元素建立联系,使用户很方便的在这
个高度集成的开发环境里进行应用程序的开发和调
试。
Delphi 7的集成开发环境( IDE)是进行设计、
运行和测试程序的工作系统。 启动 Delphi 7,运行
后可以见到它的开发环境如图 1-1所示。
1.4.1 Delphi 7集成开发环境的组成
主要包括以下几个窗口,主窗口; 对象树形图、
对象监视器窗口; 窗体设计器窗口、代码编辑器窗口。
(图 1-1 Delphi
7开发环境 )
1.4.2 Delphi 7主窗体
Delphi 7的 主窗体 位于屏幕的上端,主要 包括四
个部分:标题栏、菜单栏、工具栏和组件栏 。
Delphi 7的主窗口如图 1-2所示。
(图 1-2) Delphi 7的主窗口
1.4.3 对象树形图及对象监视器窗口
对象树形图窗口( Object TreeView)用树形表方式列出了项目
中所有的对象,即窗口、组件、菜单等,并清楚地表明了它们之间
的关系。对象树形窗口如图 1-3所示。
在对象树形图窗口下方是对象
监视器窗口( Object Inspector),
对象监视器窗口含有两个页卡:属
性页卡( Properties),显示窗体
中当前被选择部件的属性信息,并
允许改变对象的属性;事件页卡
( Events),列出了当前部件可以
响应的事件。对象监视器窗口如图
1-4所示。
图 1-3 对象树
形图窗
图 1-4 对象监视
器窗
1.4.5 窗体设计器
在 Delphi 7的开发过程中,大部分的设计是在窗体设
计器中,主要是通过向窗体中添加组件以及更改窗体
及组件的属性和填写事件来完成的。当创建一个
Windows 应用程序时,Delphi 会缺省的建立一个窗体
Form1。 窗体设计器窗口如图 1-5所示。
对象树形图窗口与对象观察器窗
口、窗体设计器窗口同步,即在
此三个工具的任何一个中改变焦
点时,另外两个工具的焦点也会
发生变化。
图 1-5 窗体设计器窗口
1.4.6 代码编辑器
代码编辑器是一个程序代码的输入和编辑工具,也称单元窗口。通常情况
下隐藏在窗体设计器的下面,可通过菜单或工具栏上的按钮对它们进行切
换。 Delphi 7 的代码编辑器具有彩色高亮度语法显示、自动进行语法校验、
代码参数提示输入和代码完善等功能。
启动 Delphi或执行 New
Form菜单项时,系统即生成
一个新的窗体,并在代码编辑
器中产生一个新页卡,在新页
卡中可以编辑相应的单元代码。
按 F12可以在窗体设计器
窗口和代码编辑器窗口之间转
换。
图 1-6 代码编辑器窗口
1.5 Delphi 的文件结构
利用 Delphi 开发 Windows 应用程序都是以工程为中心的,即每个应用程序
都对应一个工程。工程中可包含一个或多个文件,这些文件主要是工程文件、
单元文件、窗体文件和资源文件等。
1.5.1 工程文件
工程文件是一个 Delphi 应用程序的总体管理和描述的文件,它的
文件后缀是,dpr, 是整个应用程序的主程序。工程文件由 Delphi 7
自动生成,一般情况下不修改这个文件。 下面是一个工程文件的
程序清单。
program Project1; //保留字 program说明这是一个工程文件
//文件名为 Project1.dpr
uses //保留字 uses对工程所引用的单元进行说明
Forms,//引用 Forms单元
Unit1 in 'Unit1.pas' {Form1};
//引用 Unit1单元,在当前目录的 Unit1.pas文件中,相应的窗体为 Form1
{$R *.res} //系统编译命令,将扩展名为,res的二进制资源文件连接到,exe文件中去
begin //工程执行部分的开始声明
Application.Initialize; //应用程序的初始化
Application.CreateForm(TForm1,Form1); //创建窗体 Form1
Application.Run; //运行程序
end,//工程执行部分的结束说明
1.5.2 单元文件
单元文件是 Delphi 的核心文件,它的文件后缀
是,pas 。 在 Delphi 7中每个窗体都有一个单元文件与
之相对应,窗体的单元文件包含了程序部分,用以控
制窗体的行为。在一个工程中,还可以建立与窗体无
关的单元文件,用来编写工程中公用的函数、过程或
定义新的数据。许多工程还调用了 Delphi 7附加库或
其单元文件中的过程或函数。 uses子句中包含的公共
单元文件包含了支持可视窗体及其控制的对象声明。
这些单元也包含了用于激活窗体的事件处理过程程序。
(详见本教程 P20~P21)
1.5.3 窗体文件
窗体文件记录设计时窗体和组件的属性,它的文
件后缀是,dfm 。 一个或多个窗体文件,它们含有相
应的单元文件。 dfm 文件在 Delphi 7 下是一种脚本化
的文本文件。 在 Delphi 7中,一个应用程序至少需要
一个窗体。
可以在窗体上单击鼠标右键,选择
【 View as Text】 命令,窗体将在代码编辑器中显
示为文本格式。 (代码省略,详见本教程 P21~P22)
1.5.4 资源文件
资源文件中可以包含各种资源, 用它可丰富应
用程序, 它的文件后缀是,res 。 编译器可以把
资源文件链接到可执行文件里 。
资源文件的生成和编辑需要有专门的工具, 如
Delphi 7 附带的 Image Editor, 利用它就可以
创建, 打开, 编辑和保存图片资源 。
1.5.5 其他文件
后缀格式为如下形式,
*.~ pas, Delphi 单元的备份文件;
*.dof, Delphi中的有关配置和选项文件;
*.dcu, Delphi 的中间编译单元文件;
*.dpk, Delphi 的包文件;
*.dll, 动态链接库 ( Delphi 可创建的一种终端文件 ) ;
*.ocx, ActiveX 控件 ( Delphi 可创建的一种终端文件 ) ;
*,exe, 可执行文件 ( Delphi 可创建的一种终端文件 ) 。
1.6 Delphi 简单应用程序实例
本节要创建一个简单的应用程序。启动 Delphi7程序,出现一个窗口,
窗体标题栏中显示“演示程序”字样,在窗体上显示一行文字,欢迎使用
Delphi 7 开发工具!,; 单击 窗体中,测试”按钮,弹出信息框告知“我
成功了!”;单击 窗体中的,退出”按钮,能够退出应用程序。 通过设计
一个简单的应用程序。
掌握以下内容,
? 应用程序开发过程;
? 常用开发工具及功能;
? 应用程序组成;
? 应用程序编译及执行。
在 Delphi7中开发的每个应用程序都被称为工程。 Delphi 7编程首先从
创建一个新工程开始。创建新工程有以下两种方法,
1.6.1 建立用户界面的对象( 1)
新创建的工程中包含一个默认窗体( Form1)和它对应的单元
( Unit1),根据工程的需要可添加窗体或单元。
工程文件的扩展名为,dpr。打开一个已建立的工程的方法是:单击 File
菜单,指向 Open Project,然后选择工程文件即可。
⑴ 启动 Delphi 7进入开发环境,此时系统自动生成一个工
程,默认名为 Project1;
⑵ 选择 File菜单,指向 New,然后单击 Application系统将创建
一个新的工程。
1.6.1 建立用户界面的对象 (2)
程序设计首先是窗体设计。因此第一项工作就是在窗体设计器完成窗体设
计,在窗体中添加各种所需对象进行界面设计。将组件板上的组件添加到窗体
上有三种方法。
( 1)单击组件板上所需组件的按钮,然后在窗体适当位置拖动鼠标画出
组件,即可将组件添加到窗体指定位置。
( 2)双击组件板上所需组件的按钮,即可将组件添加到窗体中心位置。
( 3)按下 Shift键不放,单击组件板上所需组件的按钮,所选择组件出现
蓝色边框,同时对象选择按钮弹起。可以在窗体适当位置连续画出该类
组件,用鼠标单击对象选择按钮,可以取消该类组件的连续添加操作。
本例中共涉及 3个对象,1个 TLabel 组件和 2个 TBotton 组件。 Label 组件
用来显示信息,不能用于输入; Button 组件用来执行有关操作;窗体是上述
对象的载体
1.6.1 建立用户界面的对象 (3)
如果组件在窗体中的位置不合适,可以用鼠标拖动的
方法进行移动,直到对所有组件的位置感到满意为止。
刚添加到窗体中的组件,其边框上有八个黑色小方
块,表明它是当前被选定的组件。可以用鼠标拖拉边框
上黑色小方块使组件在相应方向上放大或缩小,也可用
鼠标指向组件内部,按下鼠标左键并拖动鼠标到窗体的
任意位置。按组合键 Ctrl+C可以对所选组件进行复制,
Ctrl+V可以在窗体中进行粘贴,按 Delete键可以删除所
选组件
1.6.2 对象属性设置 (3)
在 Delphi 中,设置窗体和组件的属性是通过对象检查
器实现的,对象检查器是设计界面过程中最频繁使用
的工具。选中窗体上要设置属性的组件,对象检查器
会显示该组件的所有属性,只需对要改变的属性后面
的值进行修改就可以了。本例中,各组件的属性设置,
组件名

组件属性
属性值
说明
Label1
Caption
空值
使 Label1中不显示任何文字
AutoSize
True
使 Label1大小随里面的内容变化和
适应
Button1 Caption 测试 在 Button1按钮上显示指定文字
Button2
Caption
退出
在 Button2按钮上显示指定文字
1.6.3 对象事件过程及编程( 1)
建立了用户界面并为每个对象设置了属性后,就要
考虑用什么事件来激发对象执行所需要的操作。这涉及
到选择对象的事件和编写事件过程代码。
为了在窗体上显示, 欢迎使用 Delphi 7 开发工
具!,,同时改变窗体的标题为, 演示程序,,需对
Form1 窗体的 OnCreate 事件进行编程。代码如下,
procedure TForm1.FormCreate(Sender,TObject);
begin
Form1.Caption:='演示程序 ';
Label1.Caption:='欢迎使用 Delphi 7开发工具 ! ';
end;
1.6.3 对象事件过程及编程( 2)
为了实现单击, 测试, 按钮弹出对话框功能,需在
Button1 的 OnClick 事件中进行编程。方法是,选择
Button1 对象,在对象监视器中选择“事件”选项卡,
在事件选项卡中选择 OnClick事件,双击事件处理栏,
Delphi自动生成该事件过程的代码框架,同时打开代码
编辑窗口,将光标定位在代码框架过程体的首行处,在
过程体中加入如下代码,ShowMessage('我成功了! ');
输入完毕可以看到按钮 Button1的鼠标单击事件处理程序的全部内
容是,
procedure TForm1.Button1Click(Sender,TObject);
begin
ShowMessage('我成功了! ');
end;
end,
1.6.3 对象事件过程及编程( 3)
同样,输入完毕的 Button2按钮的鼠标单击事件
处理程序的全部内容是,
procedure TForm1.Button1Click(Sender,
TObject);
begin
Close;
end;
end,
1.6.4 编译、调试、执行
Delphi 是先编译后执行的程序,它不是解释执行的。所以一般可先使
用菜单 【 Project】 |【 Build All Projects】 进行编译程序,但更多的时候是直
接使用菜单 【 Run】 |【 Run】 来直接运行一个程序,因为它会先编译,如
果没错误再运行。
程序运行结果如图 1-16所示,
当出现一个名为 Delphi 7程序的
窗口,单击窗口上的显示按钮,
显示一行文字“第一个 Delphi 7
程序”,单击窗体右上方关闭
按钮时退出程序。
在程序中除了语法错误,还
有可能在程序运行中出现错误,
这就要涉及到程序的调试。
Delphi 7为程序员提供了方便的
程序调试手段。 图 1-15 程序运行结果
1.6.5 保存工程
当程序调试完毕没有任何问题时,还要注意保
存程序。可通过菜单 【 File】 |【 Save All】 保存所
有文件,也可以单个保存每一个要保存的文件。
打开 Sample目录可以发现有六个文件,分别
是 Main.dfm,Main.pas,Sample.cfg、
Sample.dof,Sample.dpr,Sample.res。应当注
意,一个应用程序并不是只由一个文件组成,而
是由许多不同类型的文件组成的。