delphi 做了一个MDI 窗体,设置:windowmenu ;可以运行,点相应的菜单,子窗口没有反应

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi 做了一个MDI 窗体,设置:windowmenu ;可以运行,点相应的菜单,子窗口没有反应相关的知识,希望对你有一定的参考价值。

在菜单的click事件里添加代码
MDIForm.WindowState := wsNormal; //MDIForm为对应子窗口
参考技术A 子菜单内没写代码嘛!

delphi mdi子窗体显示和释放的问题

try Application.CreateForm(TFrm_Website,Frm_Website); Frm_Website.ShowModal; finally FreeAndNil(Frm_Website); end;我是这样调用的MDI子窗体,可是显示不出来,但是把FreeAndNil(Frm_Website);屏蔽掉就可以了,但是如果这样的话,岂不是不能释放MDI的子窗体了,但是如果在每个子窗体的close事件中加Action := caFree吧,窗体又太多,请教应该怎样正确合理的调用MDI子窗体。

调用的时候,假设MidForm是你的mid子窗体if not(CreateForm(MidForm))then
Application.CreateForm(TMidForm,MidForm);mid的关闭要这样直接在close事件里写MidForm.Destroy;就行了,这样可以反复调用,关掉也是可以重新打开~
参考技术A showModal方法是以模式显示窗体,MDI子窗体的显示方法一般采用show方法 。至于MDI子窗体的释放,一般都是在MDI子窗体的OnClose和OnDestroy事件分别执行Action := caFree 和 Frm_Website := nil 来进行释放。 参考技术B 主窗体放个按钮写如下代码,同时每个子窗框的Close事件Action := caFree;
if self.MDIChildCount> 0 then self.ActiveMDIChild.Close;

以上是关于delphi 做了一个MDI 窗体,设置:windowmenu ;可以运行,点相应的菜单,子窗口没有反应的主要内容,如果未能解决你的问题,请参考以下文章

Delphi中实现MDI子窗体(转)

delphi 如何改变主窗体

Delphi的MDI编程中遇到的一个奇怪问题(值得研究的一个问题)

DELPHI的关于关闭窗口的非常简单的问题

delphi 子窗体传值问题子窗体调用

有空delphi子窗体关闭触发父窗体做出一系列改变的操作,主要就是子窗体关闭时能改变父窗体组件状态