就这点家当了:
void __fastcall TFrmMain::ShowMdiForm(TFormClass FormClassName)
{
if (this->MDIChildCount>=10)
{
InfoBox("打开的窗口过多,请关闭其它的窗口再进行本操作!");
return ;
}
TForm * TempMdiForm=NULL;
for (int i=0;i<=this->MDIChildCount-1;i++)
{
if (this->MDIChildren[i]->ClassType()==FormClassName)
{
TempMdiForm=this->MDIChildren[i];
break;
}
}
if (!TempMdiForm)
{
Application->CreateForm(FormClassName,&TempMdiForm);
}
TempMdiForm->Show();
if (TempMdiForm->WindowState==wsMinimized)
{
ShowWindow(TempMdiForm->Handle,SW_RESTORE);
}
return;
}
void __fastcall TFrmMain::ShowMdiForm(TFormClass FormClassName)
{
if (this->MDIChildCount>=10)
{
InfoBox("打开的窗口过多,请关闭其它的窗口再进行本操作!");
return ;
}
TForm * TempMdiForm=NULL;
for (int i=0;i<=this->MDIChildCount-1;i++)
{
if (this->MDIChildren[i]->ClassType()==FormClassName)
{
TempMdiForm=this->MDIChildren[i];
break;
}
}
if (!TempMdiForm)
{
Application->CreateForm(FormClassName,&TempMdiForm);
}
TempMdiForm->Show();
if (TempMdiForm->WindowState==wsMinimized)
{
ShowWindow(TempMdiForm->Handle,SW_RESTORE);
}
return;
}
return ;