我有个很怪异的需求,就是想判断我的A窗口是否Domodal了某个子窗口
比如A::OnClickBtn(){ b.Domodal();}则这时认为A Domodal了子窗口。如果A干干净净的什么也没有,则认为没有请求支援

解决方案 »

  1.   

    还有就是你在A里调用了 MessageBox也算处于Modal模式
      

  2.   

     用GetWindowLong(hWnd, GWL_EXSTYLE);来查找当前窗口是否包含WS_EX_DLGMODALFRAME样式
      

  3.   

    Domodal是显示窗口,你用IsWindowVisible函数看看
      

  4.   

    判断窗口是否被disable了,模式对话框弹出后会Disable父窗口
      

  5.   

    ASDGSDG
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/
      

  6.   

    或者根据你domodol的窗口标题 或者设置一个变量专门保存这个domodol的返回值然后再判断
      

  7.   

    枚举A窗口的所有子窗体.判断其是否具有以下属性. UINT   uFlag   =   0;   
    uFlag   |=   WF_CONTINUEMODAL;   
    uFlag   |=   WF_MODALLOOP;   
    if (this->m_nFlags   ==   uFlag)
    {
    // 模态
    }或枚举所有窗体 查找其父窗体为A窗体的对象 判断其属性.MSGBOX对话框应该使用GetWindows()能判断.或使用代码激活窗体.若之后不是顶层窗体 则有DoModal窗体.