我正在开发MDI应用程序,为每个创建的MDI子项分配一个选项卡.我需要在主(父)表单代码中“捕获”子表单的OnActivate,OnCreate和OnDestroy事件.简单地调用子代码形式的代码对我来说是不可能的,因为有许多表单的类被用作MDI子代,插件也可以加载它自己的形式……
所以,我的问题是:如何在不使用子表单事件的情况下激活/停用MDI子表单?
解决方法
我在几年前编写了一个任务栏类型的组件,只做这种类型的事情.
它叫做TrmMDITaskbar.您可以在 Torrys找到它的副本,它是rmControls库包的一部分.它处理激活,最小化,最大化等.
它叫做TrmMDITaskbar.您可以在 Torrys找到它的副本,它是rmControls库包的一部分.它处理激活,最小化,最大化等.
它的工作原理是它挂钩MDIParents窗口句柄寻找MDIChild事件并根据这些事件做事.
如果你想写自己的,我会建议你作为一个好的开始.
瑞安.
附: Torrys上的版本有点旧,但应该仍然可以使用.我的支持网站上有更新的版本. (Mills Enterprise)