就这点家当了:
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;
}