Delphi 封装(2)类的封装

本文介绍了一个使用Delphi编写的窗体交互示例程序,包括两个窗体Form1和Form2之间的创建与引用过程。文章展示了如何在Form1中创建Form2实例,并通过按钮点击事件改变当前窗体的标题。此外,还演示了如何通过内部成员变量FForm来访问另一个窗体。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

unit Unit1;

uses   
    //...

type   
    Form1: TForm1;

implementation

procedure TForm1.FormCreate(Sender: TObject);
begin
  Form2 := TFrom2.create(self);
end;

procedure TFrom1.Button2Click(Sender: TObject);
begin
    Form1.caption := 'Hi'; //不要再TForm1类中国实用Form1
end;

unit Unit2;

var
    Form2: TForm2;

implementation

//...

unit Unit1;

uses   
    //...

type   
TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
private
    FForm:TForm;
public
    property Form: TType read FForm write FForm;
end;

var
    Form1: TForm1;



implementation

procedure TForm1.FormCreate(Sender: TObject);
begin
  Form2 := TFrom2.create(self);
end;

procedure TFrom1.Button1Click(Sender: TObject);
begin
    if Assigned(FForm) then
        TForm2(FForm).Shoe;//访问的是内部成员FForm,主要FForm需要转型.
end;

procedure TFrom1.Button2Click(Sender: TObject);
begin
   self.caption := 'Hi';//在TForm1类中实用self代替Form1.
end;

//一下是项目文件中的内容
program Project1;
uses
    Forms,
    unit1 in 'Unit1.pas'{Form1},
    Unit2 in 'Unit2.pas'{Form2};

begin
    Application.Initialize;
    Application.CreateForm(TForm1,Form1);
    Application.CreateForm(TForm2,Form2);
    //通过属性传递Form2的引用
    Form1.FForm := Form2;
    Application.Run;
end;

 

转载于:https://www.cnblogs.com/YiShen/p/9866947.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值