在我的本地Windows移動應用程序中,我有一個窗口創建對話框。可以說我的窗戶把手是hMainWnd
。什麼會導致父窗口不知道它有一個子對話框?
我創建使用DialogBoxParam()
和hMainWnd
傳遞作爲對話的父對話:
DialogBoxParam(_,_,hMainWnd,_,_);
比方說對話框的句柄hDlgWnd
。從該對話框中,GetParent()
返回hMainWnd
預期:
//We're inside the dialog created above
HWND hParent = GetParent(hDlgWnd); //hParent == hMainWnd
下面是奇怪的事情,呼籲GetWindow()
找到hMainWnd
回報NULL
孩子們,表示它有沒有孩子。我希望函數返回hDlgWnd
//We're inside the main window
HWND hChild = GetWindow(hMainWnd, GW_CHILD); //hChild == NULL
一個孩子怎麼能知道它的父時,家長不知道其子?
對不起,WS_CHILD是一個錯字。我已經修復它並試圖澄清這個問題。我怎麼做? – 2009-05-22 01:47:15