【发布时间】:2019-11-04 14:10:05
【问题描述】:
我有一个包含三个表单(一个用于手机、平板电脑和桌面)的应用程序,它们都具有相同的组件,并且每个表单上的所有组件都具有相同的名称。应用程序启动时仅创建一个表单,具体取决于屏幕解决方案。
然后我有一个从表单单元调用的单元,我需要在调用表单/单元上显示结果
现在我必须这样做:
If assigned(mobileform1) do
mobileform1.Memo1.Text := MyText
else if assigned(mobileform2) do
mobileform1.Memo1.Text := MyText
else if assigned(desktopform) do
mobileform1.Memo1.Text := MyText;
有没有办法将创建的表单分配给一个变量并且只有一行?
CreatedForm.Memo1.Text := MyText;
我试图将它分配给一个 TForm 变量,但我无法使用它或者我不知道如何使用它。
谢谢, 寻求帮助。
【问题讨论】:
-
这是复制/粘贴错误,所有分支都分配给
mobileform1.Memo1.Text吗?如果不是,您的解决方案是删除“如果”。 -
解决这个问题的方法很多。也许您可以只使用一种形式并根据目标进行不同的布局。或者将表单实现隐藏在接口后面。这里可能没有足够的信息让任何人给出明确的建议。
-
反正我觉得你们不会交流的。在这个级别,解决方案是使用基本形式。从具有 Memo1 的表单中继承所有前端表单,并使用该表单类型的变量。
标签: delphi delphi-xe6