我在主对话框里面创建了几个子对话框,但是我的主对话框是有图像做背景的,怎么样让子对话框透明,现在我的主对话框里子对话框的背景是灰色的 我试着把子对话框设置Transparent属性为true,还有其它一些方法但是主对话框背景仍然被遮住,高手们有这方面的例子么  帮我解决这个难题好么 困扰我很久了

解决方案 »

  1.   


    BEGIN_MESSAGE_MAP(CSubDlg, CDialog)
    //{{AFX_MSG_MAP(CSubDlg) ON_WM_CTLCOLOR()
    //}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    HBRUSH CSubDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
    { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);         if (CTLCOLOR_DLG == nCtlColor)
        return ((HBRUSH)GetStockObject(HOLLOW_BRUSH));
             return hbr.
    }
      

  2.   

    ...
    ON_WM_ERASEBKGND()...BOOL CSubDlg::OnEraseBkgnd(CDC* pDC)
    {
    // TODO: 在此添加消息处理程序代码和/或调用默认值 return 1; //return CDialog::OnEraseBkgnd(pDC);
    }
      

  3.   

    把画刷设置成透明的
    ---------------------------------
    goodboyws(深夜不眠者) 
    ---------------------------------
    所说的