我先将子窗体设成的是availabe forms;
我用create 创建子窗体时,总是显示
cannot create form,no MDI forms are currently  active;
请各位高手指点一下!!!!
小弟万分感谢!!!

解决方案 »

  1.   

    设置formstyle了吗?
    mdichild:=tmdichild.create(application);
    mdichild.show;
      

  2.   

    procedure TMainForm.CreateMDIChild(const Name: String);
    var
      Child: TMDIChild;
    begin
      Child:= TMDIChild.Create(Application);
      Child.Caption:= Name;
    end;
      

  3.   

    提示的意思是说当前没有一个MDI主窗口,
    所以不所创建MDI子窗口!
    你看看你的主窗口是不是一个MDIForm-> FormStyle := fsMDIForm;
    还有一个应用程序中MDI主窗口必需是再先建立的,
    如果你有启动画面,那么启动窗口的建立一定要放在主窗口的Create这后!procedure TMainForm.CreateMDIChild(const Name: String);
    var
      Child: TMDIChild;
    begin
      Child:= TMDIChild.Create(Application.MainForm);
    //还有这儿最好是用Application.MainForm,而不是Application;
      Child.Caption:= Name;
    end;
      

  4.   

    谢谢各位!
    小弟忘了必须将MDI设为程序的主窗口!!
      

  5.   

    liang_z(千山一刀之忍者神龟) 说得很清楚