HWnd和CWnd的获取函数

2023-11-01

顺便记录一下有关窗口对象指针和窗口句柄相关的函数。

Win32 API函数对窗口的操作总是需要一个窗口句柄(hWnd)来指向需要操作的对象;比如::SetWindowPos(hWnd,...)

而MFC内,窗口句柄已经包含在对象成员内,需要的是指向窗口对象的指针(pWnd),这样就可以对此对象的成员函数操作了。比如pWnd->SetWindowPos(...)

常用获得函数:

AfxGetApp()  // 这个不是窗口,相当于theApp,顺便列在这里。

以下是MFC中获取窗口对象指针的函数(Win32 API的话就是获得窗口句柄):

AfxGetMainWnd()

GetParent()

GetOwner()

GetDlgItem( int nID )

GetActiveWindow( )

GetTopWindow( ) // 获取Child风格的窗口对象指针

GetForegroundWindow( )

GetPane( int row, int col )

FindWindow( LPCTSTR lpszClassName, LPCTSTR lpszWindowName )

GetWindow( UINT nCmd )

FromHandle( HWND hWnd )

GetTopLevelParent( )

GetTopLevelOwner( ) // the window that is a child of the desktop

另外,在文档/视图架构程序中,还有:

GetActivePane(int* pRow = NULL, int* pCol = NULL) // Virtual, called by framework,Override to require an action by the user before getting the active pane

GetActiveView( ) // View也是从CWnd派生而来

GetActiveFrame( ) // Frame也是从CWnd派生而来 virtual 

GetTopLevelFrame( )  // Frame也是从CWnd派生而来


以下是MFC中获取窗口句柄函数:

GetSafeHwnd( )

当然在MFC内,你通过以上诺干方法获取了窗口对象的指针,调用GetSafeHwnd( )也就获得了这些窗口的句柄。


另外顺便列些常用的获取句柄的函数:

AfxGetInstanceHandle( ) // 应用程序的Instance句柄,有些Win32 API函数调用的时候需要这个句柄。

AfxGetResourceHandle( )

AfxGetThread( )

GetMenu( )

GetDlgCtrlID( ) // The numeric identifier of the CWnd child window (not only for dialog window)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HWnd和CWnd的获取函数 的相关文章

随机推荐

  • 纯电阻电路中的等效变换

    目录 1 电阻的串并联等效 1 串联 2 并联 2 Y形联结和 形联结的等效变换 1 Y gt 2 gt Y 3 实际电源的两种模型及其等效变换 1 实际电压源模型 2 实际电流源模型 3 两种模型间的等效变换 4 受控源的等效 等效的核心
  • 虚拟机安装服务器2008,VMware Workstation 虚拟机安装64位windows 2008 R2 系统

    偶看现在使用的电脑是 惠普 康柏 Elite 8300 MT Mini Tower 操作系统 Windows 7 旗舰版 64位 基本硬件展示 处理器 英特尔 第三代酷睿 i5 3470 3 20GHz 四核 主板 惠普 3397 内存 8
  • Java基础(03)——Java语法结构(顺序与选择结构)

    Java中的语法结构 版权声明 Java中的语法结构 1 顺序结构 2 选择结构 1 简单的if语句 2 if else 语句 3 多分支if语句 4 switch case语句 版权声明 本文原创作者 清风不渡 博客地址 https bl
  • 免费好用的虚拟服务器,六大免费好用的虚拟主机管理系统

    虚拟主机的出现 是适应了现在互联网发展的需要才出现的 现在的市场中 中小型企业占据多数 而中小型企业又不能花费大量资金用来租用服务器建设网站 所以出现了功能完整价格低廉的虚拟主机 虚拟主机是通过专用的软件程序把一台服务器分割成为多个不同的虚
  • nginx文件服务器文件日期,nginx文件目录服务器

    用nginx配置一个文件服务器 并解决中文乱码问题 配置文件 server listen 80 server name downloadapp 3vyd com location add header Access Control Allo
  • 查看Python安装路径几种方法

    查看Python安装路径方法 在使用python的时候 有时候会需要找到python包的安装位置 怎么办 对于Windows平台 打开cmd 使用命令py 0p 其中0是零 显示已安装的 python 版本且带路径的列表 参见下图 其中带星
  • 记录一下项目中遇到的有关websocket延迟的问题

    想想就觉得好笑 事情呢是这个样子的 我们项目采用的事Spring websocket stomp 实现的导检功能的项目 需要很多设备和服务器进行交互 项目在公司和其他环境部署运行都没有任何问题 也就是说从来没遇到过websocket延迟的问
  • Laravel5 (cli)命令行执行脚本及定时任务

    本文转自 http www cnblogs com chunguang p 5660074 html Artisan是Laravel自带的命令行接口名称 它提供了很多有用的命令想要查看所有可用的Artisan命令 可使用list命令查看 1
  • Vi介绍及常用命令

    简要介绍 由加州大学伯克利分校 Bill Joy 研究开发 文本 编辑器有很多 比如图形模式的gedit kwrite OpenOffice 文本模式下的 编辑器有vi vim vi的增强版本 vi和vim是我们在Linux中最常用的 编辑
  • 【C++】queue,stack和priority_queue 三种容器适配器

    什么是适配器 适配器是一种设计模式 设计模式是一套被反复使用的 多数人知晓的 经过分类编目的 代码设计经验的总结 该中模式是将一个类的接口转换成客户希望的另外一个接口 故适配器就是接口转换装置 让我们能通过特定的方法去操作原本自己不能直接操
  • shiro 动态修改资源权限不需要重启项目或者重新登录用户

    用shiro做权限控制的时候 变更用户或者角色的权限后刷新界面不会重新加载权限 需要重启tomcat或者用户重新登录 特别的不人性化 通过下面的方式可以解决这个问题 但仅仅针对于单机 对集群来说就不太清楚 以后有了更好的方法再去使用 菜鸟级
  • java抽象类应用多态_java_抽象类、接口、多态的使用

    抽象类 抽象类 包含抽象方法的类 抽象方法 没有方法体的方法 使用 abstract关键字修饰方法 该方法就成了抽象方法 抽象方法只包含一个方法名 而没有方法体 格式为 修饰符 abstract 返回值类型 方法名 参数列表 抽象类的使用
  • H5页面跳转到微信公众号首页

    H5页面跳转到微信公众号首页 1 需求背景 微信公众号 客户端 网页需要用户关注才能进行活动 因此需要引流到公众号进行关注操作 在多篇文章无法找到关键的一个解决点 主要是在阐述如何复制公众号首页的链接 2 具体实现 首先 找到公众号的一个首
  • 【点云下采样/抽稀】python-pcl:pcl::VoxelGrid::applyFilter

    这篇博客将介绍如何使用python pcl对点云las laz进行下采样 抽稀 可以根据设置的参数决定下采样到元数据的90 80 60 或者40 不会完整的按这个梯度递减 但参数rate顺序下降 基本能大致达到这个概率 下采样设置的voxe
  • mysql添加表注释、字段注释、查看与修改注释

    mysql 一 基础知识 1 创建表的时候写注释 create table test1 field name int comment 字段的注释 comment 表的注释 2 修改表的注释 alter table test1 comment
  • Ubuntu root用户界面登录设置

    Ubuntu下用户登录界面默认是没有root权限登录的 以下设置可以在用户界面添加root权限登录 sudo vim usr share lightdm lightdm conf d 50 ubuntu conf greeter show
  • 搭建Android开发环境 以及 ionic 编译安卓app步骤

    1 下载安装JDK 下载地址 https www oracle com technetwork java javase downloads jdk8 downloads 2133151 html 安装好后 配置系统环境变量 控制面板 系统和
  • html5文本框设置圆角,css如何设置圆角边框?

    圆角边框是css3新增属性 在圆角边框出现之前 前端开发有的采用整块的圆角图片作为背景 有的采用小的圆角图片分别放在元素的四角 非常麻烦 下面我们来看一下如何使用css设置圆角边框 圆角边框 border radius 的基本用法 圆角边框
  • Java通过网络url直接读取文件内容

    public void readFileFromUrl String filePath throws Exception URL url new URL filePath HttpURLConnection urlConnection Ht
  • HWnd和CWnd的获取函数

    顺便记录一下有关窗口对象指针和窗口句柄相关的函数 Win32 API函数对窗口的操作总是需要一个窗口句柄 hWnd 来指向需要操作的对象 比如 SetWindowPos hWnd 而MFC内 窗口句柄已经包含在对象成员内 需要的是指向窗口对