子窗口问题

hirong 2000-03-20 11:48:00
我建立了一个多文档的程序,程序每次启动时,总是建立一个子窗口,如何才能使这个子窗口不再出现?单击这个窗口的关闭按钮时,子窗口并不关闭,而是最小化,怎么才能关闭这个子窗口?另外一个问题就是如何将子窗口的菜单加到主窗口中去?
...全文
133 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
929 2000-03-20
  • 打赏
  • 举报
回复
解决子窗口自动出现:
可在程序中检查MDI主窗口的开始事件或菜单中的新建功能,查找建立子窗口的语句,把它们去掉可以取消自动建立子窗口。
解决子窗口关闭:
可在子窗口的ONCLOSE事件中,将ACTION置为CAFREE。
加菜单:
在建立子窗口中菜单时,将其菜单项的GROUPINDEX值置为大于MDI主窗口菜单中菜单项中的最大的GROUPINDEX,可以将菜单结合。
halfdream 2000-03-20
  • 打赏
  • 举报
回复
一,不要让程序自动创建子窗口,把那相关的Application.CreateForm(<子窗口>)那一句
删掉.创建子窗口,
在菜单事件中加入类似代码:
childform.Create(Application);
childform.Show();

二,在子窗口里CLOSE事件中
Action := caFree;//自动释放子窗体实例
三,把子窗口里面的菜单项的Groupindex的值设成与主窗口菜单项中Groupindex
值设成不同就可以了这可以决定它们的顺序。
AcherMagic 2000-03-20
  • 打赏
  • 举报
回复
用菜单:Project->Options
在Forms页,将auto-CreateForms中的
ChildForm转移到 available Forms中
程序运行时不会每次出现子窗口
但要显示子窗口就要
ChildForm := TChildForm.Create(Self)

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧