|
對于在資源文件中加入的控件, 只能在對話框的WM_INITDIALOG中通過 hChildWnd=GetDlgItem(hDlg, ID_xxx); SetWindowLong(hChildWnd, GWL_USERDATA, (LONG)pData); 加入額外的數(shù)據(jù)。
如果是自己手工創(chuàng)建的控件,創(chuàng)建時就可傳入必要的數(shù)據(jù),通過超類化在WM_CREATE中將數(shù)據(jù)保存。 ===================================== 這樣一來,對話框里的子窗口控制將仍然無法獲得WM_CREATE消息, 因為我想要的超類的窗口過程是個通用的,通過額外的參數(shù)來辨識是哪個窗口對象, 從而把消息先交該窗口對象處理,再調(diào)用原系統(tǒng)窗口過程,這樣就更 hChildWnd=GetDlgItem(hDlg, ID_xxx); SetWindowLong(hChildWnd, GWL_USERDATA, (LONG)pData);的時候已經(jīng)錯過了WM_CREATE消息
|