判断MDI窗体的子窗体是否存在

//***************************************************************************//函 数名: CreateForm
//返 回值: boolean
//参 数: TForm
//功 能: 判断MDI窗体的子窗体是否存在 //***************************************************************************
function TForm1.CreateFor(CForm:TForm):boolean;
var
i:integer;
FormExist:boolean;
begin
FormExist:=false;
if(CForm=Nil) then //判断CFrom是否为空
begin
CreateForm:=false; //函数返回值赋false
exit; //退出本函数
end;
for i:=0 to Screen.FormCount-1 do //判断窗体是否已经建立起来
begin
if Screen.Forms[i].ClassType=CForm.ClassType then //判断窗体存在 FormExist:=true;
end;
if FormExist=false then
begin
CreateForm:=false; //函数返回值赋false
exit; //退出本函数 end;
if CForm.WindowState=wsMinimized then
ShowWindow(CForm.Handle,SW_SHOWNORMAL) //显示窗体
else
ShowWindow(CForm.Handle,SW_SHOWNA); //显示窗体
if not CForm.Visible then
CForm.Visible:=true;
CForm.BringToFront; //当前窗口显示在最前面CForm.SetFocus;
CreateForm:=true;
end;

原文地址:https://www.cnblogs.com/blogpro/p/11446504.html