|  | 
 
 发表于 2020-9-27 14:00:01
|
显示全部楼层 
| 1.传对象指针是可以的 2.但不能调用与句柄映射有关的函数。比如CWnd::GetDlgItem().只要不导致下面这个函数和其它句柄映射有关的函数,就可以。
 
 CWnd* PASCAL CWnd::FromHandle(HWND hWnd)
 {
 CHandleMap* pMap = afxMapHWND(TRUE); //create map if not exist
 ASSERT(pMap != NULL);
 CWnd* pWnd = (CWnd*)pMap->FromHandle(hWnd);
 
 #ifndef _AFX_NO_OCC_SUPPORT
 pWnd->AttachControlSite(pMap);
 #endif
 
 ASSERT(pWnd == NULL || pWnd->m_hWnd == hWnd);
 return pWnd;
 }
 | 
 |