最近项目有需要,得到一个非自己实现的窗口控件对象。于是想起曾经做过类似功能。总结如下:

调用EnumChildWindows(this->m_hWnd, EnumChildProc, NULL);遍历指定窗口的所有子窗口。这里就是遍历This->m_hWnd的所有子窗口。this从外部窗口继承,外部窗口上的控件就是我们需要查找的对象。

实现BOOL CALLBACK EnumChildProc(HWND hwndChild, LPARAM lParam) 的窗口遍历回调函数,其中hwndChild为你指定的父窗口的各个子窗口。返回True或False,可以控制这个子窗口过程是否被继续调用,具体看MSDN,我代码返回是True,应该表示继续查找,不断调用回调函数。

在EnumChildProc实现中可以用

HWND EditNumHwnd = ::FindWindowEx(hwndChild,NULL,_T("Edit"),NULL);

去查找某个Combobox控件的子Edit控件。然后用

SendMessage(EditNumHwnd, WM_SETTEXT, (WPARAM)0, (LPARAM)(filterString.kACharPtr()));

去设置字符串。

用CWnd* pComBox = CWnd::FromHandle(hwndChild);
    CComboBox
*pCCombox = (CComboBox *)pComBox;得到对应的Combobox类指针。

接着就能调用AddString,DeleteString,SetCurSel这些函数了。

最新文章

  1. PowerDesigner生成Access数据库
  2. <<< 编程类开发工具
  3. <一>获取数据库连接
  4. Cookie实现商品浏览记录--方式二:JS实现
  5. hiho41 : 骨牌覆盖问题·一
  6. MyBatis的Dao层注入SqlSession
  7. WinForm特效:拦截窗体上各个部位的点击
  8. android聊天,存储聊天记录sqlite
  9. [Mugeda HTML5技术教程之6]添加元素
  10. MongoDB学习笔记-认识MongoDB
  11. mysql 赋给用户权限 grant all privileges on
  12. 代码生成利器:IDEA 强大的 Live Templates(转)
  13. C/C++语言简介之关键字
  14. 聚类--K均值算法:自主实现与sklearn.cluster.KMeans调用
  15. ActiveMQ在windows下启动失败解决方案
  16. Hadoop-3.0.2 覆盖源代码生效
  17. jax-rs示例
  18. typescript-koa-postgresql 实现一个简单的rest风格服务器 —— typescript 开发环境配置
  19. OOP的函数方法
  20. Android按键添加和处理的方案

热门文章

  1. 大数据导入Excel
  2. window+git+AndroidStudio+github
  3. 【英语】Bingo口语笔记(48) - 关于春节的表达
  4. Android中Bitmap, Drawable, Byte,ID之间的转化
  5. ORACLE 修改日志大小及增加日志成员
  6. 剑指offer—算法之位运算(二进制中1的个数)
  7. JBPM4入门——9.自动节点单线执行
  8. MySQL与Oracle 差异比较之六触发器
  9. check windows return character
  10. hdu 5510 Bazinga (kmp+dfs剪枝) 2015ACM/ICPC亚洲区沈阳站-重现赛(感谢东北大学)