1. 程式人生 > >走出MFC視窗子類化的迷宮

走出MFC視窗子類化的迷宮

CWnd::CreateàCWnd::CreateExàAfxHookWindowCreate(this)à_AfxCbtFilterHook。在鉤子函式_AfxCbtFilterHook中,將已建立的視窗(HWND附加到當前正在初始化的CWndCEdit)物件(_AFX_THREAD_STATE::m_hWndInit)上。然後再呼叫::SetWindowLong改變視窗的過程AfxWndProc視窗函式AfxWndProcAFX_MODULE_THREAD_STATE::m_pmapHWND中查詢hWnd對應的CWnd物件,AfxCallWndProc將訊息委託給具體視窗物件的WindowProc
函式處理。