delphi窗体之间的相互传值

这篇博客介绍了如何在Delphi中实现窗体间的值传递。通过定义一个用户信息类,初始化并赋值,然后在第二个窗体中引用并显示这些值。在Form1中创建Form2对象并显示,而在Form2的FormCreate事件中获取Form1中的用户信息,并显示在相应控件上。关键步骤包括设置Form2的AutoCreate属性为Available。
摘要由CSDN通过智能技术生成

效果图如下所示


Form1代码

//定义一个用户信息类

type
  TUsersInfo=class
    //声明三个全局变量
    public
       UserName: string;
       UserPwd:string;
       UserAge:Integer;
  end;

//引用form2

uses Unit2;

//定义用户信息对象

var
  UsersInfo:TUsersInfo; 

//初始化并付初值

procedure TForm1.btn1Click(Sender: TObject);
begin
    //创建窗体对象
    UsersInfo:=TUsersInfo.Create;
    //赋值初始化
    UsersInfo.UserName:='小王';
    UsersInfo.UserPwd:='123456';
    UsersInfo.UserAge:=18;
    //手动运行启动窗体
    Application.CreateForm(TForm2,Form2);
    //显示窗体
    Form2.Show;
end;


在窗体form2里面写如下代码

uses Unit1;//引用form1

//窗体初始化代码

procedure TForm2.FormCreate(Sender: TObject);
begin
    //将Form类里面的数据传递过

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Delphi ,可以使用以下步骤将子窗体的值传递给父窗体: 1. 在子窗体定义一个公共的属性,用于保存要传递的值。 2. 在子窗体创建一个公共的方法,用于将需要传递的值设置到属性。 3. 在父窗体创建一个公共的方法,用于接收子窗体传递的值。 4. 在父窗体创建子窗体的实例,并调用子窗体的设置值方法。 5. 在子窗体关闭时,调用父窗体的接收值方法,以便在父窗体更新相应的控件。 以下是示例代码: 在子窗体定义公共属性和方法: ```delphi type TChildForm = class(TForm) private FValue: Integer; public procedure SetValue(AValue: Integer); end; implementation procedure TChildForm.SetValue(AValue: Integer); begin FValue := AValue; end; ``` 在父窗体定义公共方法: ```delphi type TMainForm = class(TForm) public procedure UpdateValue(AValue: Integer); end; implementation procedure TMainForm.UpdateValue(AValue: Integer); begin // 在这里更新父窗体需要显示子窗体值的控件 end; ``` 在父窗体创建子窗体实例并调用设置值方法: ```delphi var ChildForm: TChildForm; begin ChildForm := TChildForm.Create(Self); ChildForm.SetValue(123); ChildForm.Show; end; ``` 在子窗体关闭时,调用父窗体的接收值方法: ```delphi procedure TChildForm.FormClose(Sender: TObject; var Action: TCloseAction); begin if Assigned(Owner) and (Owner is TMainForm) then TMainForm(Owner).UpdateValue(FValue); end; ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值