gpt4 book ai didi

delphi - 如何在 Delphi 中以编程方式设置 TDatamodule 的设计时高度/宽度?

转载 作者:行者123 更新时间:2023-12-03 18:35:11 28 4
gpt4 key购买 nike

我用它包含的一堆 TFDQueries 生成了一个 TDatamodule。然后,我像这样保存这个 Datamodule .DFM

  lFileStream   := TFileStream.Create('Datamodule.dfm', fmCreate);
lMemoryStream := TMemoryStream.Create;
lMemoryStream.WriteComponent(lDataModule);
lMemoryStream.Seek(0, soFromBeginning);
ObjectBinaryToText(lMemoryStream, lFileStream);
lFileStream.Free;
lMemoryStream.Free;

为了用户友好,我需要在生成这个 TDatamodule 时设置它的宽度和高度。但我不能使用
lDatamodule.Width := 500; // Does not compile
lDatamodule.Height := 500; // Does not compile

因为 Width 和 Height 是注册的设计时属性。允许设置 TComponents 的设计时 Left 和 Top 属性的类似策略是使用 DesignInfo 属性完成的
procedure BootyShakin;
var
NewDesignInfo : LongRec;
begin
NewDesignInfo.Lo := Word(100);
NewDesignInfo.Hi := Word(100);
lComponent.DesignInfo := Longint(NewDesignInfo);
end;

我正在寻找一种类似的解决方案来设置 TDatamodule 的设计时间宽度和高度,然后再将其保存到 .DFM

最佳答案

TDataModule提供公共(public)属性(property) DesignSize ,其类型为 TPoint .

文档说:

Specifies the design size for the data module at design time.
An application should never need to set this value. It controls the size of the data module window at design time.



尽管文档不推荐它 - 对于使用 TDataModule 的普通应用程序,我认为-您可以使用此属性归档您要查找的内容。

关于delphi - 如何在 Delphi 中以编程方式设置 TDatamodule 的设计时高度/宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44027036/

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