TScreen.CustomForms可以获得所有已创建的TFrom,查看其ClassName属性是否为指定的Form类就OK了,如 var nLoop: Integer ... for nLoop := 0 to Screen.CustomFormCount - 1 do if Screen.CustomForms[nLoop].ClassName = '你需要的窗体类名' then ...
错了,更正:if Assigned(Form1) then //created ...
Assigned 较为简单,不过在窗体销毁时最好用 FreeAndNil()
findwindow() 参数我不记得了,
if Assigned(窗体类名) then
if Assigned(窗体类名) then
麻烦一点遍历所有的对象 不过还是感觉ASSIGN好一些
我用的是 if 窗体名=Null then ...但是要在此窗体關閉時要付為Null窗体名:=Null; 不知你想不想用
if Assigned(对象) then
if Application.FindComponent(Form2.Name)=nil then showmessage('尚未创建!') else begin showmessage('已经创建!'); Form2.Destroy; end;//Form2-》'已经创建!'-》'尚未创建!'
..
var nLoop: Integer
...
for nLoop := 0 to Screen.CustomFormCount - 1 do
if Screen.CustomForms[nLoop].ClassName = '你需要的窗体类名' then ...
...
较为简单,不过在窗体销毁时最好用
FreeAndNil()
参数我不记得了,
不过还是感觉ASSIGN好一些
if 窗体名=Null then
...但是要在此窗体關閉時要付為Null窗体名:=Null;
不知你想不想用
showmessage('尚未创建!')
else begin
showmessage('已经创建!');
Form2.Destroy;
end;//Form2-》'已经创建!'-》'尚未创建!'