文章目录
1.CPaintManagerUI消息处理
- 1.CPaintManagerUI消息处理
- 2.作者答疑
窗口的消息处理函数是界面UI最重要的部分,它接受来自操作系统非常多的消息,在上一小节中,知道在CPaintManagerUI中的MessageHandler函数中,是窗口消息流程的一部分,其中处理的消息有,WM_NCACTIVATE,WM_NCCALCSIZE,WM_NCPAINT,WM_APP+1,WM_CLOSE,WM_ERASEBKGND,WM_PAINT,WM_PRINTCLIENT,WM_GETMINMAXINFO,WM_SIZE,WM_TIMER,WM_MOUSEHOVER,WM_MOUSELEAVE,WM_MOUSEMOVE,WM_LBUTTONDOWN,WM_LBUTTONDBLCLK,WM_LBUTTONUP,WM_RBUTTONDOWN,WM_RBUTTONUP,WM_MBUTTONDOWN,WM_MBUTTONUP,WM_CONTEXTMENU,WM_MOUSEWHEEL,WM_CHAR,WM_KEYDOWN,WM_KEYUP,WM_SETCURSOR,WM_SETFOCUS,WM_KILLFOCUS,WM_NOTIFY,WM_COMMAND,WM_CTLCOLOREDIT,WM_CTLCOLORSTATIC。它处理了与窗口相关的使用频率非常高的消息。它接受到了这些消息,然后通过内部的事件机制,转发给相应的子控件。 第一部分是消息过滤器,如下所示:
bool CPaintManagerUI::AddMessageFilter(IMessageFilterUI* pFilter)//继承至IMessageFilterUI接口的对象
{
if (pFilter == NULL) return false;
ASSERT(m_aMessageFilters.Find(pFilter)
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?