`
美丽的小岛
  • 浏览: 309592 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Delphi单元文件

 
阅读更多

1.库单元文件头:其中声明了库单元的名字.

2.Interface部分:

  由保留字interface开始,结束于保留字implementation,它用来声明引用的单元,常量,数据类型,变量,过程和函数.在Interface部分声明的变量,常量,数据类型,过程,函数都可以供外部引用,对整个程序而言是共有的.也就是说,对于所有引用该单元的单元来说,这些声明都是可见和可访问的.

  在Interface部分,只需写出过程和函数的首部,具体的定义是在下面的implementation部分给出的.

  Interface部分又可分为多个可选部分,分别为单元引入部分(uses),常量说明部分,类型说明部分,变量说明部分,过程和函数声明部分.

3.Implementation部分:

  Implementation部分分为两部分.一部分是声明部分,包括单元引用,常量,类型,变量,过程和函数的声明,这一点和Interface部分相似.

区别有两点:

  (1):在Implementation部分声明的只对本单元是公共的,可见的,其他单元即使引用了该单元,也不能访问它们.

  (2):在Implementation部分声明的过程和函数,不需要遵循先声明后定义的规则,而可以直接写出过程和函数的定义.另一部分是在Interface部分声明的过程和函数的定义.

4.Initialization部分:

  用于初始化该库单元,此处的代码最先执行.如果多个库单元中包含Initialization部分,那么它们的执行顺序就和Program的uses部分引用单元的出现顺序是一致的.

5.Finalization部分:

  通常用于释放Initialization部分分配的资源.如果多个库单元中包含Finalization部分,其执行顺序和Initialization部分正好相反.

 

unit MainFrm; {库单元文件头}

interface     {接口部分}

uses         
  Windows, Forms, StdCtrls;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    procedure MyButtonClick(sender:TObject);
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation  {实现部分}

//uses

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
  MyButton : TButton;
begin

 

 

 

  MyButton := TButton.Create(self);
  MyButton.Parent := self;
//告诉创建方法在Form1中显示MyButton
  MyButton.Caption := '测试一';
  MyButton.OnClick := MyButtonClick;
  MyButton.Show;
end;

procedure TForm1.MyButtonClick(sender:TObject);
begin
  Application.MessageBox(PAnsiChar(TButton(sender).Caption)
                        ,'Test Component');
  TButton(sender).Caption := '测试二';
end;

initialization  {可选的初始化部分}
  //
finalization    {结束部分}
  //

end.            {End结束符}

 

 

6.Sender参数:

  看上面程序代码发现事件处理程序的参数中,至少含有一个参数Sender,它代表触发事件处理程序的组件,有了Sender参数,可以使多个组件共用相同的事件处理程序.

7.Self参数:

  Self是指所编的程序范围是在哪一个类中,Delphi中大都在窗体范围内编程,因此,Self即指窗体,如果在编写一个类或是一个组件,则Self指该类或该组件.我们在过程和函数的声明中可以看出Self是代表哪个组件,即Self代表"."号之前的组件.另外应注意,Self只能用在类方法中,而不能用在过程或函数中.如下列是错误的:

 

Function a1(B:Integer):Integer;
begin
...
Button := TButton.Create(self);
...
end;


8.Parent和Owner的区别:

  (1):Parent属性是指组件的包容器,组件只能在此范围内显示和移动.

  (2):Owner属性是指组件的所有者,它负责组件的创建和释放.Create方法应带有表示组件
所有者的参数.

  (3):它们都是运行阶段的属性,只能通过代码设置.

分享到:
评论

相关推荐

    Delphi单元文件详解

    ### Delphi单元文件详解 在Delphi编程语言中,单元文件是构成应用程序的基本构建块,它们不仅封装了代码,还管理着数据类型、接口、实现细节以及初始化与终结化过程。下面将深入解析Delphi单元文件的各个组成部分,...

    IP助手函数的delphi单元文件,源代码

    网上下载的,已经修改好,可用于Delphi 2010 包含两个文件,一个iphlpapi.pas,用来包装 iphlpapi的windwos sdk接口,一个iphelper.pas 有很多有用的辅助函数

    网络流量,数据包流量监视,使用IPHLPAPI

    7. `IPHLPAPI.pas`:这是一个包含IP Helper API函数声明的Delphi单元文件,方便在Delphi项目中调用这些API函数。 在实际的应用场景中,使用`GetIfTable`获取的网络流量信息可以用于网络性能分析、故障排查、带宽...

    delphi单元自动创建

    一个标准的Delphi单元文件通常包括三个部分:接口(Interface)、实现(Implementation)和初始化/终结(Initializations/Finalizations)。接口部分定义了对外可见的元素,如类和函数;实现部分则包含具体实现代码...

    delphi 制作并调用资源文件

    将生成的 .res 文件复制到你的项目文件夹下,在 Delphi 单元文件中,在`{$R *DFM}`语句后面加上`{$R yourfile.res}`,这样就可以将资源文件加入到可执行文件中了。 #### 四、在 Delphi 中调用资源文件 一旦资源...

    Delphi库单元结构

    每个Delphi单元文件的开头都有一个unit语句,它指定该单元的名称。这个名称必须与文件名相同,例如`unit Unit1;`。这是告诉编译器这个文件属于哪个单元的关键。 2. **interface 部分**: interface部分是单元的...

    DELPHI编写的HOOK API实现DLL全局钩子启动记事本的程序-.rar

    程序的实现过程中,"main.dcu"和"hookproc.dcu"是编译后的单元文件,包含程序的主要逻辑和钩子处理函数。"main.ddp"是项目文件,定义了项目的配置和依赖关系。"main.dfm"是窗体文件,保存了用户界面的设计和状态。而...

    Delphi中资源文件使用方法详细讲述

    2. **在单元文件中声明**:在Delphi单元文件中,在`{$R *DFM}`指令之后添加`{$R FileName.res}`,这样资源文件就会被包含到最终的可执行文件中。 此外,还可以采取更简便的方法:直接将RC文件添加到Delphi项目中,...

    gnu运筹软件glpk及Delphi接口文件

    6. `BucketMem_ASM.pas`:这可能是另一个Delphi单元文件,包含了特定内存管理或算法实现的汇编优化,可能与GLPK的内存管理有关。 7. `readme.txt`:这是一个标准的文本文件,通常包含关于如何使用压缩包内文件的...

    Delphi图象处理单元文件

    Delphi图象处理单元文件,包含该文件,在程序中添加图像处理。

    delphi获取文件大小

    在Delphi中,可以使用`TFile`或`TFileSystem`类(自Delphi XE7起引入)来获取文件大小,也可以使用更传统的`SysUtils`单元中的`GetFileSize`函数。以下是两种方法的详细说明: 1. 使用`TFile`类: `TFile`类提供了...

    delphi 开发 代码行统计工具

    本着开源共享的心态,前几天公司让练习编写一个代码行统计工具,要求识别delphi单元文件的代码行统计,空行不计,统计注释行,代码行,注释了,这里的代码行是指非纯注释行的行,有打开,追加,保存txt,关闭操作,...

    Delphi 的rc4加密单元函数库

    而 "crypto" 可能是一个包含RC4加密算法实现的Delphi单元文件,其中可能定义了如 `RC4Init`(初始化密钥)、`RC4Crypt`(加密数据)等函数。 在 Delphi 中,使用 RC4 加密库的一般步骤可能如下: 1. 导入 "crypto...

    delphi读取文件流

    首先,`TFileStream`是Delphi的System.Classes单元中的一个类,它继承自TStream,提供了对磁盘文件的读写操作。在使用`TFileStream`前,需要包含相应的单元: ```delphi uses System.Classes; ``` 创建`...

    delphi7基础实例单元文件结构

    本篇文章将深入探讨Delphi 7的基础实例单元文件结构,帮助初学者理解其核心概念。 首先,我们来了解Delphi 7的工程文件结构。一个标准的Delphi 7工程通常包括以下几个部分: 1. **.DPR 文件**:这是工程主文件,...

    在Lazarus中的Delphi转换器.pdf

    1. 转换工程、软件包及单元文件:转换器能够处理整个Delphi工程,软件包,以及单独的Delphi单元文件,并将它们转换成Lazarus相对应的文件结构。这包括转换源代码文件、单元文件、工程文件、项目文件和窗体文件等。 ...

    delphi 源码Tesseract3.0 ocr

    从这些文件中,我们可以深入学习 Delphi 如何集成和使用 C/C++ 开发的动态链接库(DLL),了解 Delphi 的单元文件(PAS 文件)如何定义接口,以及如何设计和实现一个 OCR 应用程序的用户界面。同时,还能学习到如何...

    大华3.0_delphi _头文件转换pas文件.rar

    4. 设定输出的Delphi单元文件(.pas)路径。 5. 开始转换过程,工具会自动生成相应的Pas文件。 6. 将生成的Pas文件导入到Delphi工程中,使用转换后的接口调用C/C++库。 通过以上步骤,Delphi开发者就能有效地利用C/...

    delphi调用TUXEDO的单元文件

    标题中的"delphi调用TUXEDO的单元文件"指出,我们需要在Delphi项目中直接使用TUXEDO提供的单元文件来实现调用其功能。这是因为Delphi并不像VC++那样可以直接链接到静态库(.lib文件)。在Delphi中,我们通常使用.pas...

    二维码插件 for delphi7

    1. RM_BarCode.dcu:这是一个Delphi单元文件,包含了编译后的类库代码,可以直接在Delphi项目中引用。开发者可以通过导入这个单元来使用二维码生成的功能。 2. RM_BarCode.ddp:这是Delphi项目文件,记录了项目的...

Global site tag (gtag.js) - Google Analytics