DELPHI基础教程

第二章 Delphi面向对象的编程方法(一)

        Delphi

        本章中,我们将讨论 Object Pascal

2.1 编写 Object Pascal

        在前边的章节中,我们通过例程,已经编写了几行简单的代码。在本章中,我们将从熟悉 Pascal

        在编写自己的 Object Pascal

2.1.1 编写赋值语句 

        在事件处理过程中,最常用到的工作就是把一个新值赋给一个属性或变量。在设计用户界面时,可以使用 Object Inspector(Object Inspector) 来改变其属性;但有时需要在程序执行时改变属性的值,而且有些属性只能在执行时改变,这些属性在 Delphi

       下文的赋值语句表征一个 OnClick

procedure TForm1.Button1Click(Sender: TObject);

begin

Edit1.Color := clRed;

end; 

        当按动按钮后赋值语句被执行,编辑框变成红色。

        在语句中,部件的名称在属性前,中间用“ .

         当将一个属性值、变量、常量或文本数据赋给属性或变量时,所赋值的类型和接受此值的属性或变量的类型应相同或兼容。一个属性或变量的类型定义了此属性或变量的可能值集合,也定义了程序代码可以执行的运算。在前边的例程中,编辑框部件的 Color

Property Color : TColor; 

         有些属性是只读 (Read Only)

2.1.2 标识符的说明与使用 

         标识符是 Delphi

2.1.2.1 变量

         变量是程序代码中代表一个内存地址的标识符,而此地址的内存内容在程序代码执行时可以被改变。在使用变量前必须对它进行说明,即对它进行命名,并说明它的类型。在所有变量说明以前加上保留字 var

var

Value ,Sum : Integer;

Line : String; 

        在窗体中加入一个名称为 Edit1

procedure TForm1.addClick(Sender: TObject);

var

X , Y: Integer;

begin

X := 100;

Y := 20;

Edit1.Text := IntToStr(X + Y);

end; 

        在本例中,当按动 ADD

2.1.2.2 预定义类型 

        Object Pascal

        整形: Integer

        实型: Single

       布尔型: Boolean

       字符型: Char

       指针型: Pointer

       字符串型: PChar

        除了预定义类型外, Delphi

        整型类别和实型类别都各有五种类型,同一类别中,所有的类型与其他同类别的都相容,您可以将一种类型的值赋给相同类别中不同类型的变量或属性,而只需要这个值的范围在被赋值的变量或属性的可能值范围内。例如,对于一个 Shortint

        在一些情况下,您可以进行不同类型的变量或属性的赋值。一般来说,可以将一个较小范围的值赋给一个较大范围的值。例如,您可以将整型值 10

2.1.2.3 常量 

       常量在说明时就被赋予了一个值,在程序执行过程中是不可改变的。下面的例子说明了三个常量: 

const

Pi = 3.14159;

Answer = 342;

ProductName = "Delphi"; 

        象变量一样,常量也有类型。不同的是,常量假设其类型就是常量说明中其所代表的值的类型。上文的三个常量的类型分别是 real

2.1.3 过程与函数 

        过程与函数是程序中执行特定工作的模块化部分。 Delphi

2.1.3.1 一个调用 Delphi

      下文将通过对一个 Memo

       Memo( 备注 )

       下面的语句表明如何调用一个名为 Memo1

       Memo1.CutToClipboard; 

       通过指定 Memo1

       下文的例程展示了如何调用 Delphi

       打开一个新的空窗体,加入一个 memo

        将 memo

为每一个按钮建立如下的事件处理过程: 

procedure TForm1.CutClick(Sender: TObject) ;

begin

Memo1.CutToClipboard;

end; 

procedure TForm1.CopyClick(Sender: TObject);

begin

Memo1.CopyToClipboard;

end; 

procedure TForm1.PasteClick(Sender: TObject);

begin

Memo1.PasteFromClipboard;

end; 

procedure TForm1.ClearClick(Sender: TObject);

begin

Memo1.clear;

end; 

        执行此程序。您可以在备注部件中输入文本,在进行了文本的标记后,可以任意地进行剪切、拷贝、粘贴和清除。当按钮被按动时,就调用相应的过程进行处理。用户可以通过查阅在线帮助进行 Memo

2.1.3.2 调用 Delphi

        有些过程要求用户指明参数。被调用的过程会在执行时使用传入的参数值,这些值在过程中被认为是已经被说明的变量。例如, LoadFromFile

Procedure LoadFromFile(const FileName: String) ; 

        在调用这一过程时,应指明 FileName

begin

OpenDialog.Execute;

Memo1.lines.LoadFromFile(OpenDialog.FileName);

end; 

2.1.3.3 使用 Delphi

        与过程一样,函数的程序代码也执行特定的工作。它和过程的差别为:函数执行时会返回一个值,而过程则没有返回值。函数可以用来赋给一个属性或变量;也可以使用返回值来决定程序的流程。

        前文中我们实际上已经接触过了函数。在讲述变量时,曾用到过下面的程序段: Edit1.Text := IntToStr(X + Y) ;其中, IntToStr(Value)

        有些函数返回一个 True

        在窗体中加入一个 ColorDialog

procedure TForm1.ChangeColorClick(Sender: TObject);

begin

if ColorDialog1.Execute then

Form1.Color := ColorDialog1.Color

else

Form1.Color := clRed;

end; 

        此事件处理过程使用一个返回 Boolean

[目录] [上一页] [下一页]