我用这条语句试了,无法获取,哪位大哥指点一二。
HWND pChildWnd= FindWindowEx(theApp.m_pMainWnd->m_hWnd, 0, "MDIClient", "myCaption");

解决方案 »

  1.   

    用FindWindow
    HWND pChildWnd= FindWindow("MDIClient","myCaption");
    MDIClient是 top-level window 
    FindWindowEx查找Child window也就是控件之类
      

  2.   

    用FindWindow
    HWND pChildWnd= FindWindow("MDIClient","myCaption");
    MDIClient是 top-level window 
    FindWindowEx查找Child window也就是控件之类
    ==============
    学习了,原来MDIClient是top-level的窗口呀。
      

  3.   

    我成功获取了MDI子窗口的句柄,可是新的问题又来了,
    我获取子窗口的句柄的目的是激活该子窗口,即让它显示到其他子窗口的最上面,
    可是我用该句柄做 SetActiveWindow和SetForegroundWindow操作都没反应。
    无奈之下,我想了个笨办法,用STL的List为所有的子窗口做了个动态列表,
    里面存放ChildFrame的类指针,对某一个类指针作MDIActivate()操作,成功了! list <CChildFrame *>::iterator li;
    li = FraList.begin();
    ((CChildFrame *)(*li))->MDIActivate();可是我觉得这样做等于绕了个大圈子,MFC内部一定有一个所有子窗口的列表,
    可是我花了好几个小时都没有找到,网上也查不到,不知哪位大哥知道,还望指点。
      

  4.   

    已经在该帖解答:
    http://community.csdn.net/Expert/topic/4974/4974484.xml?temp=.5806696