试试:
if not assigned(form2) then
form2:=tform2.create(nil);
if not assigned(form2) then
form2:=tform2.create(nil);
解决方案 »
- 急:dbgrid控件数据修改问题!
- float值相减的绝对值精度问题
- 100分求救:FastReport的打印范围问题
- 刚刚升五级用户喽!高兴散分.........(200分)
- 请问怎样知道屏幕的分辨率是多少。
- 急件:如何从一个fram1到fram2复制一个chart的内容,包括里的series的数据内容
- 請教文件查找問題!!
- 我机器上的odbc的版本和我同事机器上的一样都是3.520.4403.2,可是我的是英文版,我同事的却是中文版??????
- 数据字典是做什么用的?怎么用?
- 关于TNMUDP component的sendstream问题
- 哪儿有fastreport,Reportbuilder控件下载?
- Delphi6的ADO问题:
Form2.Show;
Form2.Free;
Form2.ShowModal;
Form2.Free;
Form2:=nil;
if not assigned(Form2) then
begin
Form2:=Form2.Create(application);
Form2.Show;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if Form2=nil then
Form2:=TForm2.Create(self); //self,application,nil都行
Form2.Show;//记住:如果程序中有Form2.Free或者是在Form2的ONClose事件中用了
//Action:=caFree,则一定要加Form2:=nil.
end;
Application.CreateForm(TSomeForm,SomeForm);
try
SomeForm.ShowModel;
finally
SomeForm.Free;
SomeForm:=nil;
end;
end
else
SomeForm.ShowModal;
end;如果用SHOW在onDestroy事件中将实例赋值为nil;