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

2023-05-16

所有窗口类的基类:类 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 调用

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

MFC 第二部分 : 窗口类成员接口 的相关文章

  • 记一次CentOS 8 部署packstack部署OpenStack失败案例,请直接看最后

    首先你需要一台安装好CentOS8 的虚拟机 xff0c 相关参数如图 两块网卡 xff0c 网卡1 NAT IP 192 168 100 100 GW 61 192 168 100 2 网卡2 可不做配置 能ping通百度 创建完成虚拟机
  • please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    first rustup toolchain install stable x86 64 pc windows gnu then rustup default stable x86 64 pc windows gnu end cargo b
  • 顺序表函数

    include 34 Seq h 34 include lt stdlib h gt include lt stdio h gt 创建顺序表 Seq Create Seq s 61 Seq malloc sizeof Seq sizeof
  • Qt Creator中配置Opencascade

    Qt Creator中配置Opencascade 前言 xff1a 由于项目需要使用到STEP STP文件 xff0c 还需要三维建模 xff0c 于是就发现了一个工具 目前网上的资源 xff0c 专门分享这方面内容的是eryar大佬 xf
  • vs运行出错:error MSB8020或error LNK1104: 无法打开文件“opencv_calib3d248d.lib/opencv_contribxxxd.lib”

    error MSB8020 可能错误原因 xff1a 低版本的vs编译高版本的代码会出现这个错误 解决方式 xff1a 转换平台工具集 xff0c 如下 xff0c 改成自己有的 2 在菜单中依次选择 项目 gt 重定解决方案目标 让后F7
  • 倒水问题bfs解题思路

    题目 解题思路 倒水问题为隐式bfs问题 xff0c 初次见到无法马上想到利用bfs的思路解题 xff0c 但是弄清楚其中过程问题便可以引刃而解 此处可类比迷宫问题 flag数组标记两个水杯中的水量状态 xff0c bfs的终止条件即第二杯
  • 网页限制F12,接触教程

    开启右键菜单 document oncontextmenu 61 function return true 开启文字选择 document onselectstart 61 function return true 开启复制 documen
  • 区间覆盖问题-贪心求解

    题目 https vjudge net problem OpenJ Bailian 2376 题目大意 本题给定两个整数n和t xff0c n表示接下来会输入n段区间 xff0c t表示需要覆盖的区间为 1 t 题目要求利用输入的n段区间来
  • DDL问题-贪心算法

    题目 题目大意 本题给出了若干个任务的DDL和对应的分值 xff0c 要求得出最少扣分值 xff0c 也就是求出最大得分 在DDL前完成任务可以得分 xff0c 否则就不能 解题思路 本题与区间覆盖问题有一些相似之处 xff0c 因此在贪心
  • TT 的神秘礼物-二分答案

    题目 题目大意 题目给出了一个长度为N的数组cat xff0c 要求产生新数组ans xff0c 其中ans由所有abs cat i cat j 组成 xff0c 其中i j且1 i xff1c j N 要求求出ans排序后的中位数 xff
  • 【区间选点 II】差分约束

    题目 题意 给定一个数轴上的 n 个区间 xff0c 要求在数轴上选取最少的点使得第 i 个区间 ai bi 里至少有 ci 个点 使用差分约束系统的解法解决这道题 Input 输入第一行一个整数 n 表示区间的个数 xff0c 接下来的
  • 【东东学打牌】复杂模拟

    题目 题意 最近 xff0c 东东沉迷于打牌 所以他找到 HRZ ZJM 等人和他一起打牌 由于人数众多 xff0c 东东稍微修改了亿下游戏规则 xff1a 所有扑克牌只按数字来算大小 xff0c 忽略花色 每张扑克牌的大小由一个值表示 A
  • 【Max Sum Plus Plus】区间dp

    题目 HDU 1024 传送门 题意 东东每个学期都会去寝室接受扫楼的任务 xff0c 并清点每个寝室的人数 每个寝室里面有ai个人 1 lt 61 i lt 61 n 从第i到第j个宿舍一共有sum i j 61 a i 43 43 a
  • 【TT的奖励】动态规划

    题目 题意 在大家不辞辛劳的帮助下 xff0c TT 顺利地完成了所有的神秘任务 神秘人很高兴 xff0c 决定给 TT 一个奖励 xff0c 即白日做梦之捡猫咪游戏 捡猫咪游戏是这样的 xff0c 猫咪从天上往下掉 xff0c 且只会掉在
  • 【ZJM要抵御宇宙射线】CSP模测T2

    题目 题目大意 本题给出平面二维坐标上的若干个点 xff0c 要求选取一个点做圆心 xff0c 此时可以以最短半径包含所有点 xff0c 求出圆心坐标和最短半径平方 xff0c 结果保留两位小数 解题思路 本题乍看只下可能觉得会很复杂 xf
  • 【宇宙狗的危机】CSP模测T4

    题目 题目描述 在瑞神大战宇宙射线中我们了解到了宇宙狗的厉害之处 xff0c 虽然宇宙狗凶神恶煞 xff0c 但是宇宙狗有一 个很可爱的女朋友 最近 xff0c 他的女朋友得到了一些数 xff0c 同时 xff0c 她还很喜欢树 xff0c
  • 【猫睡觉问题】较复杂模拟

    题目 HDU 3700 Cat 题目大意 题目给出一只猫每天若干个时间段有任务 xff0c 没有任务时猫可以睡觉 题目还给出两个数A和B xff0c 表示猫每次睡觉时间不能少于A小时且每次醒着的时间不能多于B小时 题目要求输出一天猫可能睡觉
  • linux 部署django时报错django.core.exceptions.ImproperlyConfigured: mysqlclient 1.4.3 or newer is required

    1 在项目中 init py中这个报错原因 xff0c python 3 5以上版本不支持这种方式 from pymysql import install as MySQLdb install as MySQLdb 解决 xff1a imp
  • 栈求解最大矩形

    题目描述 给一个直方图 xff0c 求直方图中的最大矩形的面积 例如 xff0c 下面这个图片中直方图的高度从左到右分别是2 1 4 5 1 3 3 他们的宽都是1 xff0c 其中最大的矩形是阴影部分 Input 输入包含多组数据 每组数
  • 负权环路问题-SPFA算法的应用

    题目描述 这一晚 xff0c TT 做了个美梦 xff01 在梦中 xff0c TT 的愿望成真了 xff0c 他成为了喵星的统领 xff01 喵星上有 N 个商业城市 xff0c 编号 1 xff5e N xff0c 其中 1 号城市是

随机推荐