主题:老菜鸟问一个关于MDI的问题
空心菜
[专家分:70] 发布于 2005-04-04 14:44:00
我在子窗体的public中定义了一个AutoPrint函数,我在父窗体中调用它的时候,只有最后 new 出来的那个子窗体会执行命令,而较早 new 出来的那些比较旧的子窗体都没有动静。我的目的就是,在父窗体上一个按钮,点击它后,所有子窗体(不管多少个)都要执行这个函数,而不是只有一个执行,请问高手们我该怎么做才能实现?
回复列表 (共2个回复)
沙发
IASM [专家分:260] 发布于 2005-04-06 09:49:00
这是因为只有当前拥有‘焦点’的窗口才能接受‘命令’。要想达到你的目的。你必须首先获得各子窗体的句柄,然后分发该‘命令’消息给它们。
板凳
空心菜 [专家分:70] 发布于 2005-04-07 08:21:00
----------------------------------------------------------------------------
for(int i=MDIChildCount-1;i>=0;i--)
{
MDIChildren[i]=SetFocus();
((TChildForm *)(ActiveMDIChild))->AutoPrint();
}
----------------------------------------------------------------------------
OK,程序我搞定了。
我来回复