当前位置:文档之家› 第1章Delphi基础知识

第1章Delphi基础知识

第1章Delphi基础知识
第1章Delphi基础知识

第1章Delphi基础知识

第1节Borland公司与Delphi

Borland公司于1983年由菲力浦·凯恩(Phillipe Kahn)创立。

Delphi于1995年由Borland公司推出,由Anders Hejlsberg主持设计。

Delphi语言的演变过程:Pascal→Object Pascal→Delphi。

第2节Delphi的特点

一、开发工具的选择

程序员的核心能力是自身的编程修养、思想、理念等。只要扎扎实实地打好基础,具备良好的编程思想,则无论选择何种开发工具均可成为软件开发高手。

二、Delphi的主要特点

1. 可视化开发环境

2. 丰富的VCL

3. 面向对象特性

4. 高效的编译器

5. 强大的数据库开发功能

6. 良好的分布式应用开发支持

第3节Delphi集成开发环境

主要组成:主窗口、窗体设计器、代码编辑器、对象查看器和对象树浏览器。

一、主窗口

标题栏、菜单栏、工具栏、组件面板。

二、窗体设计器

一个窗体对应一个单元。

三、对象树浏览器(Object TreeView)

显示本模块对象的层次结构。

四、对象查看器(Object Inspector)

包括对象列表、属性页、事件页。事件页的左列为事件名,右列为事件处理程序。双击右列的组合框可生成默认的事件处理程序。

五、代码编辑和浏览窗口

左侧为单元管理器,右侧为代码编辑窗口。

六、代码洞察

Delphi提供了与VB相似的代码洞察(Code Insight)技术,可以使代码的输入更加快捷,减少出错。

1. 代码完成(Code Completion)

(1)自动完成关键字(补充)

Delphi集成开发环境的代码编辑器与VB相似,具有自动完成关键字和标识符的功能,它的快捷键为Ctrl+空格键(与VB中文版中的Alt+→键相似)。在中文Windows操作系统下,Ctrl+空格键被设置为打开/关闭输入法,导致在Delphi中无法使用这一快捷键快速输入关键字。可以通过控制面板将开/关输入法快捷键屏蔽,则Ctrl+空格键即可作为Delphi中快速输入关键字的快捷键。

(2)自动列示对象属性和方法

输入对象名称和句点“.”后,系统将自动弹出该对象的属性和方法列表框供选择。

2. 代码参数提示(Code Parameters)

输入函数名、过程名或对象的方法名并输入左扩号,系统将自动弹出参数提示框,提示各参数的类型。

3. 代码模板(Code Templates)

代码模板用于提供语句模板,以便快速、准确地输入常用的语法结构框架代码。例如,输入“for”,然后按Ctrl+J键,可以生成如下for循环结构的框架代码:

for := to do

begin

end;

4. 符号洞察(Tooltip Symbol Insight)

将鼠标指针指向一个标识符,稍作停顿,系统将弹出提示框,显示该标识符的类型、所属单元名、声明的位置(行号)等。

5. 类完成(Class Completion)

在单元的接口(interface)部分声明类及其成员后,按Ctrl+Shift+C键,可以在实现(implementation)部分自动生成该类的所有方法的框架代码。

第4节Delphi编程的一般步骤

一、控制台应用程序

(略)

二、可视化应用程序

1. 开发应用程序的一般步骤

开发应用程序的一般步骤如下:

●设计界面

创建应用程序;设计窗体;添加组件;设置对象属性。

●编写代码

Windows应用程序的突出特点是事件驱动机制。编程的主要任务是在代码编辑器中为组件编写事件处理程序。

●编译运行

编译:按Ctrl+F9组合键,或执行菜单命令:Project→Compile ...

运行:按F9键,或单击工具栏Run按钮,或执行菜单命令Run→Run

●保存文件

按Ctrl+Shift+S组合键,或单击工具栏Save All按钮,或执行菜单命令:File→Save All 注意:应当为每个工程单独创建一个文件夹,将该工程所需全部文件均保存在该文件夹中。

2. 设计简单应用程序

【例1.4.1】设计简单应用程序

设计一个简单的应用程序,在单行文本框中输入姓名,在组合框中选择性别。单击“输入”按钮后,将姓名和性别显示在多行文本框中。单击“退出”按钮,卸载窗体。

(1)设计界面

设计窗体;添加组件;设置对象属性。

启动Delphi,在窗体上添加两个标签(Label组件),设置Caption属性分别为“姓名”、“性别”;一个单行文本框(Edit组件),设置Text属性为空;一个组合框(ComboBox组件),设置Items属性为“男、女”两项,Text属性为“男”;一个多行文本框(Memo组件),设置Lines属性为空,ScrollBars属性为ssVertical;两个按钮,设置Caption属性分别为“输入”和“退出”。

(2)编写代码

Windows应用程序的突出特点是事件驱动机制。编程的主要任务是在代码编辑器中为组件编写事件处理程序。

①双击窗体上的“输入”按钮,在该按钮的单击事件过程中的begin之前声明一个字符串变量:

var sInfo: String;

在bigin和end之间输入以下代码:

sInfo := ’姓名:’+ Edit1.Text + #13#10;

sInfo := sInfo + ’性别:’ + ComboBox1.Text + #13#10;

Memo1.Lines.Add(sInfo);

②按F12键切换到窗体设计界面,双击“退出”按钮,输入:

Close;

技巧:

使用本章第3节所述代码洞察技术,可以快速准确地输入代码。

(3)保存文件

单击工具栏Save All按钮,系统将提示保存单元文件(.pas)和工程文件(.dpr)。

注意:工程所在文件夹中扩展名中带有“~”的文件是备份文件,可以删除。不要删除其他文件。

(4)编译和运行

编译:按Ctrl+F9组合键,或执行菜单命令:Project→Compile ...。编译后将在工程所在文件夹生成可执行文件(.exe)。

运行:按F9键,或单击工具栏Run按钮,或执行菜单命令Run→Run。运行后亦将在工程所在文件夹生成可执行文件(.exe)。

3. 使用帮助

Delphi提供了较全面的帮助文件,正确地使用帮助是深入学习Delphi的有效途径。

第5节工程、窗体和单元文件

一、Delphi工程的组成

一个Delphi工程主要由三个基本文件组成:工程文件、窗体文件和单元(unit)文件。

1. 工程文件

工程文件的扩展名为.dpr。工程文件含有对本工程中所有窗体和单元的引用以及主程序。执行【Project | View Source】命令可查看工程文件内容。

当创建一个新工程时,工程文件的内容如下:

program Project1; { 声明工程标识符 }

uses{ 指明本工程使用的单元 }

Forms, {非窗体单元 }

Unit1 in 'unit1.pas' {Form1}; { 窗体单元 }

{$R *.res} { 编译指令:链接资源文件 }

begin{ 主程序块开始 }

Application.Initialize; {初始化;Application为隐含的全局变量 }

Application.CreateForm(TForm1, Form1); { 自动创建第一个窗体 }

Application.Run; { 运行应用程序 }

end. { 主程序块结束 }

代码说明:

保留字“program”指明本工程为应用程序(.exe)。若工程是动态链接库,则保留字为“library”。

Project1是工程标识符,也是工程文件的默认名称。

uses子句通知编译器有哪些单元链接到本工程中。上述代码中,Forms是一个标准单元标识符,所有使用窗体的Delphi工程均含有该标识符。

Unit1是另一个单元的标识符,该单元与一个窗体对应。Unit1.pas是含有该单元源代码的单元文件名。单元标识符和单元文件名必须保持一致才能正确编译。

保留字in通知编译器查找单元源代码文件的位置。注释{Form1}指明与该单元相关窗体的实例标识符(若单元不是一个窗体相关单元,则不出现此注释)。注释中的标识符与窗体的Name属性相同。在对象查看器【Object Inspector】中修改窗体名称时,工程文件内上述注释的内容同步改变。

$R是编译指令,表示与工程主文件名相同的资源文件(.res)被链接到本工程中。资源文件含有工程图标等内容。

begin...end代码块是工程的主程序源代码。

Application.CreateForm语句加载其参数指定的窗体。工程中的每个自动创建的窗体对应一条Application.CreateForm语句,各语句按照添加窗体的顺序排列。若需改变此顺序,应使用【Project | Options】菜单命令,不要直接修改工程文件的源代码。

Application.Run语句启动应用程序。

每当在工程中添加窗体或单元时,工程文件的uses子句中自动添加相关代码。

2. 窗体文件

窗体文件的扩展名为.dfm。窗体文件可以用两种格式保存:文本格式(默认)和二进制格式(为了向后兼容)。

右击窗体,选择【View As Text】,可以查看窗体文件的文本内容,此时窗体图形界面隐藏,若需返回图形界面,右击代码窗口,选择【View As Form】。

一个工程中可以有多个窗体。执行【File|New|Form】命令,或单击工具栏【New Form】按钮即可添加新窗体。

3. 单元文件

(1)单元文件的基本结构

单元文件的扩展名为.pas。每个单元文件是一个模块。单元文件可分为窗体单元文件和非窗体单元文件。前者与一个窗体对应,其中含有事件处理程序以及与窗体有关的代码;后者与窗体无关,是一个独立的模块,其中含有可以被其他单元调用的过程、函数等。

单元文件由单元头以及接口、实现、初始化(可选)和结束(可选)部分组成,以end 和句点结束,其基本结构如下:

unit单元名称;

interface

{接口部分}

implementation

{实现部分}

[ initialization

{ 初始化部分 }

[finalization

{ 结束部分 } ] ]

end.

接口部分:以保留字interface开始,在实现部分之前结束。在接口部分,声明可以由本单元以及其他单元或程序使用的类型、类、常量、变量、过程和函数。接口部分的过程和函数声明仅含有首部(原型),过程体和函数体在实现部分定义。在接口部分声明的类必须包括对所有类成员的声明。接口部分的uses子句必须紧随保留字interface之后出现。

实现部分:以保留字implementation开始,在初始化部分之前结束,若单元中没有初始化部分,则实现部分到单元结束为止。在实现部分,对接口部分声明的过程和函数进行定义(可省略参数)。此外,亦可声明本单元私有的类型、类、常量、变量、过程和函数。实现部分可以含有自己的uses子句(紧随implementation之后)。

初始化部分和结束部分均为可选项,若有结束部分,则必须有初始化部分。

(2)单元文件的主要内容

以下是创建一个新工程时窗体单元文件的内容:

unit Unit1; { 声明单元标识符 }

interface{ 接口部分 }

uses{ uses 子句指明引用的单元文件 }

SysUtils, Windows, Messages, Classes, Graphics, Controls,

Forms, Dialogs;

type

TForm1 = class(TForm) { 类声明 }

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1; { 类实例声明 }

implementation{ 实现部分 }

{$R*.DFM}{ 链接窗体文件的编译指令 }

end.

在上述代码中,声明了名称为Unit1的单元。该单元含有接口部分和实现部分。

在接口部分声明了一个由普通窗体类TForm派生的子类TForm1,然后用var关键字将当前工程中的窗体Form1声明为TForm1类的一个实例。

实现部分的$R编译指令用于链接窗体文件,将当前工程中的窗体文件加入到经过编译的可执行文件中。

注意:不要修改或删除含有“{$ ... }”标识的语句,此类语句是编译指令而不是一般的注释语句。

二、使用工程管理器

1. 打开工程管理器

执行菜单命令【View|Project Manager】,即可打开工程管理器(Project Manager)。

2. 管理工程

在工程管理器中,以树状结构显示工程组、工程、工程所含的单元及窗体,可以通过工具栏按钮或快捷菜单对工程、单元及窗体进行添加、去除等操作。

练习

1. 熟悉Delphi集成开发环境

主窗口、窗体设计器、代码编辑器、对象查看器、对象树浏览器和工程管理器。

2. 设计简单程序

(1)编制教材1.4.2节示例程序

根据教材9~12页所述步骤,练习编制教材1.4.2节【例1-2】程序,熟悉调整组件位置及尺寸的方法,掌握组件属性的设置。

(2)编制本教案第4节示例程序

练习编制本教案第4节“【例1.4.1】设计简单应用程序”。

(3)扩展本教案第4节示例程序

在窗体上放置4个标签(Label),设置Caption属性分别为“学号”、“姓名”、“性别”、“年龄”;三个Edit组件(单行文本框),设Text属性均为空,分别用于输入学号、姓名和年龄;一个组合框,设置Items属性为“男、女”两项,Text属性为“男”,用于选择性别;一个Memo组件(多行文本框),设Lines属性为空,用于显示已输入的信息;两个命令按钮,设Caption属性分别为“输入”和“退出”。

在“输入”按钮的单击事件过程中声明一个字符串变量,将用户在Edit组件中输入和在组合框中选择的内容存入变量,然后分行显示在Memo组件中。显示格式如下:学号:030001

姓名:张三

性别:男

年龄:20

...

在“退出”按钮的单击事件过程中用Close语句关闭窗体。

3. 熟悉Delphi工程的组成

熟悉工程文件、窗体文件和单元文件的结构。

重点掌握单元文件的基本结构和主要内容。

相关主题
文本预览
相关文档 最新文档