......
if not assigned(MainFM) then
Application.CreateForm(TMainFM, MainFM)
......procedure TMainFM.N11451Click(Sender: TObject);
begin
SetMatList;
end;procedure SetMatList;
begin
if not assigned(MatQueryFM) then begin
MatQueryFM := TMatQueryFM.Create(nil);
MatQueryFM.Show;
end;
end;其中MainFM是主窗体,MatQueryFM 是子窗体,请问为何调用以后在主窗体中看不到该子窗体呢
if not assigned(MainFM) then
Application.CreateForm(TMainFM, MainFM)
......procedure TMainFM.N11451Click(Sender: TObject);
begin
SetMatList;
end;procedure SetMatList;
begin
if not assigned(MatQueryFM) then begin
MatQueryFM := TMatQueryFM.Create(nil);
MatQueryFM.Show;
end;
end;其中MainFM是主窗体,MatQueryFM 是子窗体,请问为何调用以后在主窗体中看不到该子窗体呢
把if not assigned(MatQueryFM) then 干掉, 一个程序员最基本的是要学会调试, 这种情况只要单步跟踪就可以发现情况了
begin
if not assigned(MatQueryFM) then
MatQueryFM := TMatQueryFM.Create(nil);
MatQueryFM.Show;
end;
在OnClose中写
Action:=CaFree;
Self := nil;
begin
if not assigned(MatQueryFM) then
MatQueryFM := TMatQueryFM.Create(Application);
MatQueryFM.Show;
end;
在OnClose中写
Action:=CaFree;
Self := nil;
Action:=CaFree;
Self := nil;阿
就是看不到子窗体阿
Action:=CaFree;
Self := nil;阿
就是看不到子窗体阿
begin
if not assigned(MatQueryFM) then
MatQueryFM := TMatQueryFM.Create(Application);
MatQueryFM.Show;
end;
在OnClose中写
Action:=CaFree;
Self := nil;
我想问一下,create(nil)和create(application)有什么区别呢
to:wy_whb() ( )
我不是跟你说了吗把if not assigned(MatQueryFM) then 去掉跟踪一下你会发现它除了第一次为真以后永远为假, 原因就Action := caFree; 加上Self := nil 也不行
procedure SetMatList;
begin
with TMatQueryFM.Create(nil) do Show;
end;
to:wy_whb() ( )
我不是跟你说了吗把if not assigned(MatQueryFM) then 去掉跟踪一下你会发现它除了第一次为真以后永远为假, 原因就Action := caFree; 加上Self := nil 也不行
procedure SetMatList;
begin
with TMatQueryFM.Create(nil) do Show;
end;
但是如何在有TImage图片的主窗体上显示子窗体呢?