首页
登录 | 注册

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

 CWnd   *wnd;  
  HWND   hWnd;  
   
  它们怎么相互转换?
1.wnd->m_wnd;  
  2.CWnd   *wnd=CWnd::FromHandle(hwnd)

你是说要强制转换吗?恐怕不行吧?wnd是窗口指针,hWnd是窗口句柄呀!不过可以互相获取,如下:  
          hWnd=wnd->m_hWnd;  
          wnd.Atach(hWnd)
建立一个CWnd对象,然后使用Attach将HWND和CWnd对象联系起来  
   
  static   CWnd*   PASCAL   FromHandle(   HWND   hWnd   );通过HWND构造一个CWnd*指针(但该指针在空闲时会被删除,所以不能保存供以后使用)。

//CWnd   Object   to   HWND:  
  CWnd   wnd;  
  HWND   hWnd;  
   
  hWnd   =   wnd.m_hWnd;          
  //   or  
  hWnd   =   wnd.GetSafeHwnd(); //推荐  
   
  //   HWND   to   CWnd   Object:  
  CWnd   *pWnd;  
  HWND   hWnd;  
   
  pWnd   =   CWnd::FromHandle(hWnd);  
  //   or  
  pWnd->Attach(hWnd);


相关文章

  • redis当中集合对象的底层实现为intset和hashtable实现,用hashtable实现时,存储具体值的是key,value统一用NULL.其实集合对象的实现和hash对象的实现还是非常类似的,都是尽可能用占用空间小的底层类型存储, ...
  • 使用JavaScript给对象修改注册监听器
    一行行地调试肯定太费时间了.如果window这个变量的_name字段被程序赋值时,能执行我们自己实现的一个监听器,这样不就方便多了么? "use strict"; function test(){ Object.defi ...
  • Python中的对象(一) By Harrison Feng   学习和使用过面向对象的程序设计概念的朋友们应该非常了解在面向对象的语言中,对象(objects)是什么.如果 你现在还不了解面向对象的程序设计概念,那么先请阅读下面的文章. ...
  • 【Python那些事儿之四】Python中的对象(二)-a
    Python中的对象(二) By Harrison Feng in Python 在<Python中的对象(一)>中,我们对Python的对象有了基本的认识. 今天我们要探索的是Python中对象之间的关系. 首先我们来看三个名 ...
  • 【Python那些事儿之五】Python中的对象(三)-a
    Python中的对象(三) By Harrison Feng in Python 我们在前面的两篇文章<Python中的对象(一)>,<Python中的对象(二)>中分别分享了对象的基本概念以及Python 中对象的 ...
  • 【Python那些事儿之六】Python中的对象(四)-a
    Python中的对象(四) by Harrison Feng in Python 在上一篇文章<Python中的对象(三)>中,我们探讨了Python对象的mutability,今天我们要分享的是复制对象和比较两个对象. 在&l ...

2019 unjeep.com webmaster#unjeep.com
12 q. 0.012 s.
京ICP备10005923号