怎么在FrmMain 登陆后自动打开另一个子Form(50分)

  • 主题发起人 主题发起人 DELPHI02
  • 开始时间 开始时间
D

DELPHI02

Unregistered / Unconfirmed
GUEST, unregistred user!
现在的情况是FrmMain 是一个MDI
运行后首先进入登陆界面-----打开FrmMain---达到条件后再自动打开其中一个子Form
自动打开子Form应在哪个事件写代码或怎么处理??
我是新手,不知道这样提问各位大侠能不能看得明白??
 
[:(]
谁能帮帮忙!!!!!!!!!!!!!!!!!!!!!!谢谢
 
如果打开主窗体FrmMain及前面一段已实现,后面自动显示子form好实现的。在oncreate或者onshow中处理就可以了。有menuitem的话,直接转到此事件就更简单啦
 
在主窗体的onshow事件中创建试一下,我以前做过
 
子窗口也是MDI
在onshow ShowModal的时候提示"Cannot make a visible window modal"
如果用 Show 则不显示子窗口
若在oncreate 则显示"Cannot create form.No MDI forms are currently active"
 
难道你不知道MDI只能一个进程有一个吗? 一个是MDI FOrm,若干个是Child Form
 
改成是Child Form 也不能打开!
 
可以在MDI主窗口.OnCreate事件中,PostMessage一个自定义消息给自己
然后处理消息打开子窗口
 
我想在MDI主窗口创建后才自动打开子窗口
 
楼主对MDI窗体理解错了,MDI窗体不能调用ShowModal方法,因为MDI模式窗体在create完后就会被show出来并且不可以被hide,除非free他
如果你只是想在程序运行后自动显示一个子窗体,只需要在project里让他和主窗体一起create就行了,比如这样:
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.Run;
 
如果你只是想在程序运行后自动显示一个子窗体,只需要在project里让他和主窗体一起create就行了,比如这样:
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.Run;

我试过,不过它只打开MDI这个主窗口!并不见子窗口???
为什么?
 
恩? 不会吧.......我用的D7 只改了窗体模式 其他一切默认......你看看是不是其他代码影响的......比如oncreate onshow里的代码
 
我用的是D6
oncreate 代码没问题
onshow 代码己取消
 
.......怎么可能,你的主窗体是fsMDIForm模式的,怎么可能会把fsMDIChild模式的窗体盖住.......-_-
你新建个工程试试
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
936
DelphiTeacher的专栏
D
D
回复
0
查看
753
DelphiTeacher的专栏
D
后退
顶部