CWnd 对象怎么和 HWND 窗口句柄相互转化?

CWnd 对象怎么和 HWND 窗口句柄相互转化?

楼主CuteSword(灵剑) 2005-01-18 16:01:54 在 VC/MFC / 基础类 提问

RT  
   
  CWnd   *wnd;  
  HWND   hWnd;  
   
  它们怎么相互转换? 问题点数:20、回复次数:9Top

1 楼fanqing(火影忍者+28%(准备学习进程/线程))回复于 2005-01-18 16:10:37 得分 3

1.wnd->m_wnd;  
  2.CWnd   *wnd=CWnd::FromHandle(hwnd)Top

2 楼AlwaysS(傲微氏)回复于 2005-01-18 16:12:56 得分 3

你是说要强制转换吗?恐怕不行吧?wnd是窗口指针,hWnd是窗口句柄呀!不过可以互相获取,如下:  
          hWnd=wnd->m_hWnd;  
          wnd.Atach(hWnd)Top

3 楼marckle(小马哥)回复于 2005-01-18 16:15:55 得分 4

建立一个CWnd对象,然后使用Attach将HWND和CWnd对象联系起来  
   
  static   CWnd*   PASCAL   FromHandle(   HWND   hWnd   );通过HWND构造一个CWnd*指针(但该指针在空闲时会被删除,所以不能保存供以后使用)。  

你可能感兴趣的:(wince&wm,pascal)