uses
Forms,{ 在Linux下改为QForms }
Unit1 in 'Unit1.pas' { Form1所在的单元 },
Unit2 in 'Unit2.pas' { Form2所在的单元 };
{$R *.res} { 这个指示字链接工程的资源文件 }
begin
{ 对Application的调用 }
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.Run;
end.
我们的程序还是叫Greeting。它引用了三个单元:一个是Forms单元,它是VCL和CLX的一部分;二是Unit1单元,它和程序的主窗体(Form1)相关联;三是Unit2单元,它和另一个窗体(Form2)相关联。
这个程序调用Application对象的一系列方法。Application是类TApplication的一个实例,它在Forms单元定义(每个工程自动生成一个Application对象)。这些调用中有两个调用了TApplication的CreateForm方法,第一个CreateForm创建Form1,它是类TForm1(在Unit1单元定义)的一个实例;第二个CreateForm创建Form2,它是类TForm2(在Unit2单元定义)的一个实例。
Unit1单元看起来像下面的样子:
unit Unit1;
intece
uses { 下面这些单元是VCL的一部分 }
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; {
在Linux下,uses子句看起来像这样:
uses { 下面这些单元是CLX的一部分 }
SysUtils, Types, Classes, QGraphics, QControls, QForms, QDialogs;
}
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
end;
var
- 5 -
Overview
Form1: TForm1;
implementation
uses Unit2; { 这是Form2定义的地方 }
{$R *.dfm} { 这个指示字链接Unit1的窗体文件 }
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.ShowModal;
end;
end.
Unit1单元创建了类TForm1(继承自TForm)和它的一个实例Form1。TForm1包含一个按钮Button1,它是TButton的一个实例;还包含一个过程TForm1.Button1Click,在运行时,当用户按下Button1时它将被执行。TForm1.Button1Click隐藏Form1并显示Form2(调用Form2.ShowModal),Form2在Unit2单元定义:
unit Unit2;
intece
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
{
在Linux下,uses子句看起来像这样:
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23665-4.html
凡是敌人反对的我们就支持