而不是在一個大對話框中的一切,我看着能夠顯示單獨的控件組的子對話框。想法是這些不是像浮動工具欄那樣的自由浮動的子對話框,但是將顯示沒有標題欄,它們的位置鎖定到父對話框......所以當你拖動父對話框時,任何打開的子對象也被拖動。在MFC(VS2005)中顯示非模態子對話框的正確方法是什麼?
注意:這些子窗口不在父對話框內,它們通常會粘在邊緣。
在MFC/VC++ 2005中,最好的方法是什麼?爲了測試,我目前有一個標準的基於MFC對話框的應用程序設置,其中包含CMainDlg
,然後我創建了一個'窗口小部件對話框'CWidgetDlg
。到目前爲止,我已經有了一個成員變量CWidgetDlg MainDlg::m_Widget
和CMainDlg
與控制器像
CMainDlg::OnDisplayWidgetBtn()
{
m_Widget.ShowWindow(TRUE);
}
一個按鈕,但當然m_Widget並沒有一個HWND設置,我試圖記住這樣做的正確方法?對於對話框控件,我可以使用DDX,但兒童對話框呢?
這是一個合理的方法,還是有更好,更自動化的方式?
顯示正常,但不能超出父窗口。有一個簡單的風格改變? – 2010-04-14 12:39:54
其實這是一個完整的其他問題。我會提出這樣的! – 2010-04-14 13:01:06
@約翰,是的,那是另一回事。在該senario上,您將不得不創建無模式對話框並編寫代碼來重新定位它們。我不認爲有一個簡單的方法,因爲MFC不支持。 – 2010-04-14 13:06:35