需要动态创建的窗体上有一个控件会消耗2个资源,于是我就将此窗体改为动态创建,语句如下:IF not assigned(frmOption) THEN BEGIN frmOption:=TfrmOption.Create(Application)
frmOption.show;END;我先没有用USES frmOption,也屏蔽了上面那几行语句,主窗体运行后用了1个资源;而后我又USES frmOption,又写上了动态创建的语句,主窗体运行并未主动创建frmOption,但却占用了3个资源,这说明动态创建的窗体调入了内存,但我并未
主动生成该窗体?这是为什么?
frmOption.show;END;我先没有用USES frmOption,也屏蔽了上面那几行语句,主窗体运行后用了1个资源;而后我又USES frmOption,又写上了动态创建的语句,主窗体运行并未主动创建frmOption,但却占用了3个资源,这说明动态创建的窗体调入了内存,但我并未
主动生成该窗体?这是为什么?
2 在frmOption单元是否有静态的var frmOption:TfrmOption
3 frmOption实在什么地方定义和引用的?
你试试这段代码
...//这里看看
with TfrmOption.Create(Application) do
begin
try
showmodal;
...//这里看看
fianlly
free;
end;
...//这里看看
察看一下资源
program
end.
try
Form2.Showmodal;
finally
Form2.Free;
end;
和窗体创建时耗费的资源是两码事,不可混为一谈。
frmOption := nil