【发布时间】:2015-04-01 01:26:07
【问题描述】:
我以两种不同的方式显示表单。第一个作为页面控件标签表的子项,如下所示:
myform := Tmyform.Create(<tab sheet of page control>);
myform.Parent := <tab sheet of page control>;
myform.Align := alClient;
myform.BorderStyle := bsNone;
myform.Visible := true;
此标签始终可见。
我第二次将它显示为这样的普通形式:
myform := Tmyform.Create(nil);
myform.ShowModal;
我这样做是因为我需要显示相同的表单,其中一些可视控件可见并且第二次隐藏。
我的问题我现在注意到,每次使用第二种方法打开表单时,应用程序都会消耗更多内存,如果我在关闭事件中使用action := cafree,当我在标签页打开时尝试关闭应用程序时会遇到访问冲突打开所以我应该如何在不使用具有相同控件的两个表单的情况下解决这个问题?
我用的是 Delphi XE5
【问题讨论】:
-
您应该能够在创建之前执行
SavemyForm := myForm;,然后在模态表单被释放后执行myForm := SavemyForm; -
或者停止使用全局
myForm指针开头。 -
这里的信息很难诊断出问题所在。就目前而言,我认为我们能做的最好的事情就是猜测。
标签: delphi