MFC 第二部分 : 窗口类成员接口

这篇具有很好参考价值的文章主要介绍了MFC 第二部分 : 窗口类成员接口。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

所有窗口类的基类:类 CWnd,封装了 Windows 窗口句柄 HWND。

  • 成员函数 DestroyWindow 可以消毁 Windows 窗口,而不需要消毁 CWnd 对象。

数据成员

m_hWnd

  • 与该 CWnd 对象相关联的 Windows 窗口句柄(HWND);

成员函数

窗口大小和位置

GetWindowRgn

获得窗口的窗口区域的拷贝

SetWindowRgn

设置窗口区域

IsIconic

判断窗口是否被最小化(图标化)

IsZoomed

判断窗口是否被最大化

GetWindowPlacement

获得显示状态和窗口的正常、最小化和最大化位置

SetWindowPlacement

设置显示状态和窗口的正常、最小化和最大化位置

BringWindowToTop

将 CWnd 对象放到覆盖窗口栈的顶部

GetWindowRect

获得 CWnd 对象的屏幕坐标

GetClientRect

获得 CWnd 对象客户区的度量

窗口访问

ChildWindowFromPoint

判断包含指定点的子窗口

FindWindow

返回由其窗口名称和窗口类标识的窗口的句柄

GetNextWindow

返回窗口管理器列表中的下一个(或上一个)窗口

GetOwner

返回指向 CWnd 对象的所有者的指针

SetOwner

改变 CWnd 对象的所有者

GetTopWindow

返回属于 CWnd 对象的第一个子窗口

GetWindow

返回与当前窗口有指定关系的窗口

GetLastActivePopup

判断由 CWnd 对象所有的弹出窗口中最近激活的窗口

IsChild

判断 CWnd 对象是否为一个子窗口

GetParent

如果存在的话,获得 CWnd 对象的父窗口

SetParent

改变父窗口

WindowFromPoint

标识包括给定点的窗口

GetDlgItem

从指定的对话框获得标准符为指定 ID 的控件

SendMessageToDescendants

发送一条消息到窗口的所有下级窗口

UpdateDialogControls

用来更新对话框按钮或其它控件的状态

CenterWindow

相对于父窗口使窗口居中

更新和绘制

Print

在指定的设备上下文绘制当前窗口

PrintClient

在指定的设备上下文(通常是打印机)绘制所有窗口

GetDC

获得客户区的显示上下文

GetDCEx

获得客户区的显示上下文,并在绘制过程中允许裁剪

RedrawWindow

在客户区中更新指定的矩形或区域

GetWindowDC

获得整个窗口的显示上下文,包括标题条,菜单和滚动条

ReleaseDC

释放客户区或窗口设备上下文,并使其可为其它程序所使用

GetUpdateRect

获得完全覆盖 CWnd 对象的更新区域的最小矩形坐标

GetUpdateRgn

获得 CWnd 对象的更新区域

InvalidateRect

通过将给定矩形添加到当前更新区域来使包括在给定矩形内的客户区无效

ShowOwnedPopups

显示或隐藏窗口拥有的所有弹出式窗口

EnableScrollBar

允许或禁止滚动条上的一个或两个箭头

坐标映射

MapWindowPoints

从 CWnd 对象的坐标空间映射一系列点到另一窗口的坐标空间

ClientToScreen

转换给定点的客户坐标或显示矩形到屏幕坐标

ScreenToClient

转换给定点的屏幕坐标或显示矩形到客户坐标

滚动 Scroll

GetScrollPos

获得滚动框的当前位置

ScrollWindow

滚动客户区的内容

ScrollWindowEx

滚动客户区内容。与 ScrollWindowEx 类似,但具有一些附加特性

GetScrollInfo

获得关于某一滚动条的由 SCROLLINFO 结构维护的信息

SetScrollInfo

设置关于滚动条的信息

SetScrollPos

设置滚动条的当前位置,并在指定的情况下重绘滚动条以反映新的位置

GetScrollBarCtrl

返回兄弟滚动条控件

RepositionBars

在客户区中对控件条重定位

拖放 Drag

DragAcceptFiles

使窗口可以接受文件拖放

插入符 Caret

CreateCaret

新的插入符形状,并获得该插入符的所有权

CreateSolidCaret

创建方块形状的插入符,并获得该插入符的所有权

CreateGrayCaret

创建变灰方块形状的插入符,并获得该插入符的所有权

GetCaretPos

获得插入符当前位置的客户坐标

SetCaretPos

移动插入符到指定的位置

HideCaret

隐藏插入符

ShowCaret

在插入符的当前位置显示插入符

对话框项

CheckDlgButton

在按钮控件前放置选中标记或清除按钮控件的选中标记

CheckRadioButton

选中指定单选钮并清除指定给中其它所有单选钮的选中标记

DlgDirList

使用文件或目录列表填充一列表框

DlgDirListComboBox

使用文件或目录列表填充一组合框的列表框

DlgDirSelect

从一列表框中获得当前选择

DlgDirSelectComboBox

从一组合框的列表框中获得当前选择

GetDlgItemInt

将给定对话框中某一控件的文本转换为一个整数值

GetDlgItemText

获得与某一控件相关联的标题或文本

GetNextDlgGroupItem

查找同一组中的下一个或前一个控件

GetNextDlgTabItem

查找在指定控件之前(之后)的第一个具有 WS_TABSTOP 样式的控件

IsDialogMessage

判断一个给定消息是否影响非模态对话框,是则处理该消息

SendDlgItemMessage

向指定的控件发送一条消息

SubclassDlgItem

将一个 Windows 控件与 CWnd 对象相关联,并使其通过 CWnd 对象的消息映射传递消息

ExecuteDlgInit

初始化对话框资源

RunModalLoop

为一模态窗口获取、翻译或发送消息

ContinueModal

使一窗口继续保持模态

EndModalLoop

结束某一窗口的模态状态

数据绑定

BindDefaultProperty

将调用对象的默认简单绑定属性(该属性在类型库中标记)绑定至相关联的数据源控件的游标

BindProperty

将数据绑定控件的游标绑定属性绑定至数据源控件,并使用 MFC 绑定管理器注册绑定关系

GetDSCCursor

获得指向由数据源控件的数据源、用户名、密码和 SQL 属性定义的底层游标的指针

菜单 Menu

GetMenu

获得指向指定菜单的指针

SetMenu

设置菜单为指定的菜单

DrawMenuBar

重绘菜单条

GetSystemMenu

允许应用程序访问控制菜单以进行复制和修改

HiliteMenuItem

加亮顶层菜单项或移去顶层菜单项的加亮显示

工具提示

EnableToolTip

允许工具提示控件

CancelToolTip

禁止工具提示控件

FilterToolTipMessage

获得对话框中与某一控件相关联的标题或文本

OnToolHitTest

判断一个点是否在指定工具的绑定矩形内,并获得该工具的信息

计时器

SetTimer

安装系统计时器,计时器触发时发送 WM_TIMER 消息

KillTimer

消除系统计时器

窗口提示

FlashWindow

闪烁窗口一次

窗口消息

  • WM_XXX
  • (Window Message)一般与窗口的内部运作有关,如:创建、绘制和销毁窗口等;
  • 通常,消息是从系统发送到窗口,或从窗口发送到窗口;
  • 消息处理函数几乎都具有一致的命名方式,其格式为前缀 On 再加上相应的消息名。

GetCurrentMessage

返回窗口正在处理的消息的指针。仅当在一个 OnMessage 消息处理函数中调用该成员函数。

Default

调用默认窗口过程,该过程提供对所有应用程序未处理的消息的默认处理

PreTranslateMessage

由 CWinApp 使用,在窗口消息被发送到 TranslateMessage 和 DispatchMessage 之前对其进行过滤

SendMessage

将一条消息发送到 CWnd 对象,直至该对象处理该消息之后才返回

PostMessage

将一条消息放入程序的消息队列,不等待窗口处理该消息就立即返回

SendNotifyMessage

将指定消息发送到窗口,并尽可能快的返回,这依赖于调用线程如何创建窗口

剪贴板 Clipboard

ChangeClipboardChain

从剪贴板查看器链中移去 CWnd 对象

SetClipboardViewer

添到 CWnd 对象到窗口链,这些窗口当剪贴板内容改变时会收到通知

OpenClipboard

打开剪贴板。其它程序仅当 Windows CloseClipboard 函数被调用时才可以更改剪贴板

GetClipboardOwner

获得剪贴板的当前拥有者的指针

GetOpenClipboardWindow

获得指向当前打开剪贴板的窗口的指针

GetClipboardViewer

获得指向剪贴板查看器链中第一个窗口的指针

OLE 控件

SetProperty

设置 OLE 控件属性

OnAmbientProperty

实现环境属性值

GetControlUnknown

获得指向一未知 OLE 控件的指针

GetProperty

获得一 OLE 控件的属性

InvokeHelper

调用 OLE 控件方法或属性

可重载函数

WindowProc

为 CWnd 对象提供一个窗口过程。默认的窗口过程通过消息映射发送消息

DefWindowProc

调用默认窗口过程,该过程提供应用程序未处理的所有窗口消息的默认处理

PostNcDestroy

在窗口被消毁后由 OnNcDestroy 函数调用

OnNotify

由框架调用以通知父窗口某一事件在某一控件中发生或者该控件需要信息

OnChildNotify

由父窗口调用以给通知控件一个响应控件通知的机会

DoDataExchange

用于对话框数据交换和验证。由 UpdateData 调用文章来源地址https://www.toymoban.com/news/detail-464365.html

到了这里,关于MFC 第二部分 : 窗口类成员接口的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【浅尝C++】继承机制=>虚基表/菱形虚继承/继承的概念、定义/基类与派生类对象赋值转换/派生类的默认成员函数等详解

    🏠专栏介绍:浅尝C++专栏是用于记录C++语法基础、STL及内存剖析等。 🎯每日格言:每日努力一点点,技术变化看得见。 我们生活中也有继承的例子,例如:小明继承了孙老师傅做拉面的手艺。继承就是一种延续、复用的方式。C++为了提高代码的可复用性,引入了继承机制,

    2024年04月10日
    浏览(48)
  • [Lua] 实现所有类的基类Object、模拟单继承OO、实现抽象工厂

    Lua 没有严格的 oo(Object-Oriented)定义,可以利用元表特性来实现 先定义所有类的基类,即 Object 类。代码顺序从上到下,自成一体。完整代码 定义一个空表 Object , __index 指向其自身(继承将直接使用该表作为对象的元表) new 定义构造对象时的初始化行为,相当于 构造器

    2024年02月11日
    浏览(37)
  • 真正理解微软Windows程序运行机制——窗口机制(第二部分)

    我是荔园微风,作为一名在IT界整整25年的老兵,今天说说Windows程序的运行机制。经常被问到MFC到底是一个什么技术,为了解释这个我之前还写过帖子,但是很多人还是不理解。其实这没什么,我在学生时代也被这个问题困绕过。而且那个时间学习资料没有那么丰富,网上也

    2023年04月11日
    浏览(41)
  • MFC使用友元函数访问窗体类成员变量

    首先创建一个窗体类指针的全局变量 在窗体类的OnInitDialog函数中将指针赋值this,在OnInitDialog中窗体已经创建完成。这样指针就可以指向窗体实例

    2024年02月07日
    浏览(39)
  • 从零学习Linux操作系统 第二十二部分 企业域名解析服务的部署及安全优化

    关于dns的名词解释:dns: domain name service(域名解析服务) 关于客户端: /etc/resolv.conf dns指向文件 A记录 ##ip地址叫做域名的Address 记录 SOA ##授权起始主机 关于服务端 bind 安装包 named 服务名称 /etc/named.conf 主配置文件 /var/named 数据目录 端口 53 关于报错信息: 1.no servers could be reach

    2024年02月22日
    浏览(46)
  • 两个视图基类 快速实现publish的5个接口 9个视图子类

    urls.py--子路由--app01--urls.py 序列化类 表模型 视图类 只需要修改视图类上的两个类属性即可,其他的不用动 urls.py views.py serializer.py 5个视图扩展类(不是视图类--》没有继承APIView及其子类,不能单独用,需要配合GenericAPIView)---》每个分别写的5个接口中得某一个方法 views.py 第四

    2024年02月04日
    浏览(40)
  • 【MFC】06.MFC六大机制:窗口创建机制-笔记

    接上文【MFC】05.MFC第一大机制:程序启动机制-笔记,这一篇文章来带领大家逆向分析MFC第二大机制:窗口创建机制的源码。 我们知道,在Win32编程中,如果我们要创建一个窗口,基本步骤为: 注册窗口 创建一个窗口,必须要给一个类名称 消息处理回调函数 那么MFC的窗口创建

    2024年02月13日
    浏览(32)
  • 【MFC】06.MFC第二大机制:窗口创建机制-笔记

    接上文【MFC】05.MFC第一大机制:程序启动机制-笔记,这一篇文章来带领大家逆向分析MFC第二大机制:窗口创建机制的源码。 我们知道,在Win32编程中,如果我们要创建一个窗口,基本步骤为: 注册窗口 创建一个窗口,必须要给一个类名称 消息处理回调函数 那么MFC的窗口创建

    2024年02月14日
    浏览(39)
  • 2022 年全国职业院校技能大赛 网络搭建与应用赛项 正式赛卷 第二部分 网络搭建及安全部署——部分答案

    1.SW3 针对每个业务 VLAN 的第一个接口配置 Loopback 命令,模拟 接口 UP,方便后续业务验证与测试 2.SW1、SW2、SW3 启用 MSTP,实现网络二层负载均衡和冗余备份,创建实例 Instance10 和 Instance20,名称为 SKILLS,修订版本为 1,其中 Instance10 关 联 vlan60 和 vlan70,Instance20 关联 vlan80 和

    2024年02月05日
    浏览(52)
  • MFC 隐藏窗口

    亲测能用 改变主窗体的创建方式 将 C***App::InitInstance() 函数中的代码 替换为

    2024年02月11日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包