m_dlgTest.Create(IDD_DIALOG1, this);
m_dlgTest.ModifyStyle(WS_POPUP,WS_CHILD,0);    CRect rcDlgs;
GetDlgItem(IDC_AREA)->GetWindowRect(rcDlgs);

ScreenToClient(&rcDlgs);
SetWindowPos(
m_dlgTest.MoveWindow(rcDlgs); 
m_dlgTest.ShowWindow(SW_SHOW);
这是我的代码,可是总不成功

解决方案 »

  1.   

    WS_CHILD可以在资源对话框的属性中设置,
    这样的话代码可改成
    m_dlgTest.Create(IDD_DIALOG1, this);
    CRect rcDlgs;
    GetDlgItem(IDC_AREA)->GetWindowRect(rcDlgs);
    ScreenToClient(&rcDlgs);
    m_dlgTest.MoveWindow(rcDlgs);
    m_dlgTest.ShowWindow(SW_SHOW);
      

  2.   

    WS_CHILD为什么非得在资源对话框的属性中设置啊?
    不可以动态设置的吗?
      

  3.   

    m_dlgTest.Create(IDD_DIALOG1, this);
    m_dlgTest.ModifyStyle(WS_POPUP,WS_CHILD,0);   -->m_dlgTest.Create(IDD_DIALOG1);
    m_dlgTest.ModifyStyle(WS_POPUP,WS_CHILD,0); 
    m_dlgTest.SetParent( this );
      

  4.   

    我原来有试过在资源对话框的属性中设置的,是可以的
    但是我就是想用代码来实现,不好意思分一半分给HuiChen(灰尘) 了