gpt4 book ai didi

delphi - 在表单的每个不同实例中,如何在变量中具有不同的值?

转载 作者:行者123 更新时间:2023-12-03 18:55:44 25 4
gpt4 key购买 nike

我收到了显示联系地址的MDI表格。由于它是Mdi,因此我可以打开该表格的多个副本。
但是,显然,使用的变量会在表格中“复制”。因此,在下面的代码中,ContactTypeId将具有基于最后创建的表单的值。

implementation

uses DataModule, MainForm;

{$R *.dfm}

var ModuleUserLevel, ContactId, ContactTypeId : Integer;
EditMode, EditAccess, AddAccess, DeleteAccess : Boolean;
ContactName : String;

constructor TContactDetailsFrm.Create(AOwner:TComponent; InContactTypeId, InContactId : Integer);
Begin
Inherited Create(AOwner);
ContactId := InContactId;
ContactTypeId := InContactTypeID;
End;


我如何避免这种情况?

提前致谢

最佳答案

您使用的是外部变量(通常称为全局变量,有点不精确),但可能需要格式为TContactDetailsFrm的实例字段:

type
TContactDetailsFrm = class(TForm)
private
FModuleUserLevel, FContactId, FContactTypeId: Integer;
FEditMode, FEditAccess, FAddAccess, FDeleteAccess: Boolean;
FContactName: string;
public
{ Public-Deklarationen }
end;


F是Delphi中专用字段的惯用前缀。

关于delphi - 在表单的每个不同实例中,如何在变量中具有不同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10299100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com