关于MDI窗体的问题!恳请各位富翁援助!!!(50分)

  • 主题发起人 主题发起人 cpilq
  • 开始时间 开始时间
C

cpilq

Unregistered / Unconfirmed
GUEST, unregistred user!
我想在程序开头用一个FORM窗体显示一张图片,一秒后,弹出一个登陆界面,输入正确的
ID以及密码之后,弹出一个MDI窗体以及MDIchild窗体。但是总是出现地址错误。然后我
就将FORM窗体(普通的FORM)取消掉,直接出现登陆界面(登陆界面的窗体本来也是普通
窗体,但是也是无法找到地址,所以我改成MDICHILD窗体,就可以了),登陆成功之后,
出现了MDI主窗体,但是就没有办法同时出现MDICHILD窗体,(如果不要登陆的话,直接
启动MDI主窗体的话,哪个MDICHILD窗体是可以跟随一起出现的!)偶是DELPHI初学者,
请各位富翁帮帮忙!我已经急死了!分不多,因为我还没有办法赚分,请见谅!
 
procedure TMDIMainForm.FormCreate(Sender: TObject);
begin
FormFlash := TFormFlash.Create(self);
FormFlash.Show;
FormFlash.Update;
sleep(2000);

Show;
Update;

FormPassword := FormPassword.Create(self);
FormPassword.Showmodal;

//FormChild1 := FormChild1.Create(self);
//FormChild1.Show;

FormFlash.Close;
FormFlash.Free;
end;

这里的 flash, password 是普通窗体

MDICHILD窗体 可放在 主程序里创建。
Application.Initialize;
Application.Title := '我的多文档界面程序';
Application.CreateForm(TMDIMainForm, MDIMainForm);

Application.CreateForm(TFormChild1, FormChild1);
Application.CreateForm(TFormChild2, FormChild2);
Application.Run;

我是在 D7 下试过的, 没问题。

但在主窗体的 create, onactive, onshow 事件里创建是不行
 
MDIForm (主窗体)必须设为第一个运行Form,不能将登录窗口设为第一个运行Form。
检查方法:菜单“Project”——“options”——“forms”中,“main form”如果不是
你的MDIForm (主窗体),则创建 MDICHILD窗体时会报错。

启动界面 可在 主程序里创建(菜单“Project”——“view source”):
Application.Initialize;
Application.Title := '我的多文档界面程序';

FormFlash := TFormFlash.Create(Application); {启动界面}
FormFlash.Show;
FormFlash.Update;
//sleep(2000);

Application.CreateForm(TMDIMainForm, MDIMainForm);


FormFlash.Hide;
FormFlash.Free; {主窗体创建好后,关闭启动界面}

登录窗口可放在 MainForm里创建,如:用菜单调用,或在 MainForm 的 FormShow事件中创建。
 
多人接受答案了。

 
后退
顶部