有两个同一父窗口的子对话框,因为需求,有部分区域相互重叠在一起。在重叠的区域里面,最上面的子对话框无法响应鼠标消息,不重叠的区域消息响应正常。求高手帮忙!!!困扰好几天了...MFC 重叠 遮挡 消息响应

解决方案 »

  1.   

    可否使用MoveWindow()函数将两个子对话框错开,避免重叠?
    CRect rect(0,0,100,100);//子对话框尺寸
    CWnd* pwnd = FromHandle(GetSafeHwnd());//子对话框指针
    pwnd->MoveWindow(&rect,1);//移动子对话框
      

  2.   

    楼主,你是不是doModal产生的摸态对话框?摸态对话框有阻塞消息循环的功能的。
      

  3.   

    放到顶层是不是指:SetWindowPos(&wndTop,....)?
    或者SetWindowPos(&wndBottom,....),这两种我都试过,没有任何改变
      

  4.   

    问题解决了,但是为什么会出现这样的情况还不清楚。我把其中的一个子对话框的风格设为WS_POPUP,重叠的部分就不会有问题了。