首先启动的一个界面不是mdiform的,此外还有一个midform的窗体和一个mdichild的界面。为什么启动的时候异常不能运行。若将启动的第一个窗体改为mdiform的窗体后就可以了,但是mdichild的窗体也跟随出现,而且不能关闭。我想实现的功能是点击菜单上的选项然后打开mdichild窗体,请问各位高手这是什么问题,应如何解决,谢谢!

解决方案 »

  1.   

    给你个例子:
    主窗体的OnFormCreate事件:
    datamodule1 := tdatamodule1.Create(self);  //数据窗体
      if not assigned(E_loginf) then          
         E_loginf := tE_loginf.Create(self);   //创建登录窗体
      E_loginf.ShowModal;  在点了登录按钮后,将登录窗体关闭就可以了....close;工程文件:
    {$R *.res}
    begin
      Application.Initialize;
      Application.Title:='自来水收费管理系统';
      Application.CreateForm(TE_Mainf, E_Mainf);    
      Application.CreateForm(Tdatamodule1, datamodule1);
      Application.Run;
     end.1.但是mdichild的窗体也跟随出现
    跟着创建是工程文件里头有了这句 :Application.CreateForm(TE_Mainf, E_Mainf);
    把那些子窗体创建的语句删了
    2.不能关闭是子窗体的ONCLOSE事件里这样写: action:=cafree;子窗体:=nil;
    3.我想实现的功能是点击菜单上的选项然后打开mdichild窗体
      在菜单的单击事件里创建子窗体就可以了
      比如:
      if not assigned(E_loginf) then          
         E_loginf := tE_loginf.Create(self);   //创建登录窗体
      E_loginf.ShowModal;