原文地址:http://blog.csdn.net/leesaiya/article/details/7374537
- 一、對話框中顯示對話框的方法:
- 1、首先創建要在對話框里顯示的那個對話框,命名為:IDD_INNER。
- 設置這個對話框的屬性:
- 1)、“Style”選擇“Child”;中文版“樣式”選擇“下層”。
- 2)、“Border”為“None”;中文版“邊框”選擇“無”。
- 2、為了顯示時能夠准確定位,我們可以在右邊要顯示對話框的地方放入一個Pic控件,命名為:IDC_STATIC_RECT,Visible屬性去掉。
- 3、得到Pic控件客戶區坐標
- //CDlgParent.cpp ——OnInitDialog()
- CRect rect;
- GetDlgItem(IDC_STATIC_RECT)-> GetWindowRect(&rect);
- ScreenToClient(&rect); //千萬注意別用成ClientToScreen(&rect);
- 4、創建並顯示對話框
- 方式一:
- //CDlgParent.h
- CDialog m_InnerDlg;
- //CDlgParent.cpp——OnInitDialog()
- m_InnerDlg.Create(IDD_INNER, this);
- m_InnerDlg.MoveWindow(rect);
- m_InnerDlg.ShowWindow( SW_SHOW );
- 方式二:
- //CDlgParent.h
- CDialog *m_pInnerDlg;
- //CDlgParent.cpp——OnInitDialog()
- m_pInnerDlg = new CDialog();
- m_pInnerDlg->Create(IDD_INNER, this);
- m_pInnerDlg->MoveWindow(rect.left, rect.top, rect.Width(), rect.Height());
- m_pInnerDlg->ShowWindow( SW_SHOW );
