Windows消息的总结

Windows消息机制 Windows程序设计是一种事件驱动的程序设计模式,主要是基于消息的。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。本文主要就几个基本概念和消息收发过程来介绍Windows消息机制。 阅读详情

               WM_CREATE消息。

                MSDN的解释如下:

                 The WM_CREATE message is sent when an application requests that a window be created by calling the CreateWindowEx or CreateWindow function. (The message is sent before the function returns.) The window procedure of the new window receives this message after the window is created, but before the window becomes visible

        首先,你得认识到CreateWindow是一个函数,它一旦执行起来,就不是一个时间点,而是一个时间段,尽管时间很短。
那么我们说它执行以后窗口就建立起来了,并不是说它返回之前窗口就没有建立起来。很显然是在它执行的过程中的某个时刻,窗口已经建立,消息队列已经建立,然后再发送一个WM_CREATE给队列,最后再返回的。 

              WM_PAINT消息。 

               WndProc处理的第二个消息为WM_PAINT。这个消息在Windows程序设计中是很重要的。当窗口显示区域的一部分显示内容或者全部变为“无效”,以致于必须“更新画面”时,将由这个消息通知程序。

              显示区域的显示内容怎么会变得无效呢?在最初建立窗口的时候,整个显示区域都是无效的,因为程序还没有在窗口上画什么东西。第一条WM_PAINT消息(通常发生在WinMain中调用UpdateWindow时)指示窗口消息处理程序在显示区域上画一些东西。在用户改变HELLOWIN窗口的大小后,显示区域的显示内容重新变得无效。wndclass结构的style字段设定为标志CS_HREDRAW和CS_VREDRAW,这样的格式设定指示Windows,在窗口大小改变后,就把整个窗口显示内容当成无效。然后,窗口消息处理程序将收到一条WM_PAINT消息。当用户将最小化,然后再次将窗口恢复为以前的大小时,Windows将不会保存显示区域的内容。在图形环境下,窗口显示区域涉及的数据量很大。因此,Windows令窗口无效,窗口消息处理程序接收一条WM_PAINT消息,并自动恢复其窗口的内容。在移动窗口以致其相互重叠时,Windows不保存一个窗口中被另一个窗口所遮盖的内容。在这一部分不再被遮盖之后,它就被标志为无效。窗口消息处理程序接收到一条WM_PAINT消息,以更新窗口的内容。

全面掌握Windows消息机制:消息大全与编程实践 本文还有配套的精品资源,点击获取 简介:Windows消息机制是应用程序与操作系统间通信的基础,涉及各种消息类型,包括系统消息、输入消息、通知消息、绘图消息、定时器消息等。开发者需掌握消息处理技术,以实现高效的应用程序响应。"Windows消息大全及消息列表"资源详细列出所有消息及其在编程中的应用,有助于理解和应用消息机制,解决程序中的问题。学习步骤包括理解消息含义、查看处... 阅读详情

相关推荐

智能车竞赛模糊PID代码与使用方法

本文给出了模糊PID的代码,以及模糊PID的程序使用方法、参数调整方法

piginthesouth的博客 9123

WM_CREATE与 WM_PAINT以及WM_INITDIALOG

程序如: switch(iMessage) {     case WM_CREATE:        ...         return 0;     case WM_PAINT:          ......          return 0;     case WM_SIZE:          ......          return 0;     defa

chunlovenan的专栏 3835

现代控制理论(4)——李雅普诺夫稳定性理论

文章目录

wang7301的博客 5万+

WM_CREATE与WM_PAINT之间是什么关系

 程序如下:       switch(iMessage)       {               case      WM_CREATE:                     ...                       return      0;               case      WM_PAINT:                         ......

liubande的专栏 1495

Zynq工程IP核封装:XCI引用与约束继承实战指南

IP核封装是FPGA系统设计中实现模块复用、团队协作与技术资产沉淀的关键环节。其本质是将功能逻辑、时序约束、接口协议和硬件配置统一抽象为可配置、可验证、可演进的标准化组件。核心原理在于通过XCI文件保留IP核的参数化定义能力,依托Vivado IP Packager实现约束继承、端口自动映射与时钟域解耦,从而保障跨项目集成的时序可信性与约束完备性。该技术广泛应用于Zynq SoC视频处理、高速接口(如HDMI/TMDS)、多时钟域控制系统等场景,尤其在需要长期维护与版本迭代的工业级嵌入式开发中具有不可替代的

weixin_42593701的博客 123

Python 驱动 CAD 二次开发:从零搭建自动化绘图环境

本文详细介绍了如何利用Python进行CAD二次开发,实现自动化绘图。通过win32com库建立Python与CAD软件的通信,文章从环境搭建、连接CAD、操作文档到核心绘图与批量处理,提供了完整的实战指南。该方法能显著提升机械设计、建筑绘图等领域的重复性工作效率,将创造力从繁琐劳动中解放出来。

weixin_29093169的博客 1229

els 窗口设置、WM_CREATE、WM_PAINT

/参数1如果加载系统光标,NULL、如果加载自定义光标,填写实列句柄,hInstance;//点叉系统依次产生WM_CLOSE,WM_DESTROY,WM_QUIT。caseWM_CREATE//窗口信息处理程序接受的第一个消息,也是回调函数处理的第一个消息(为WM_CREATE)。//窗口结构的最后的那个成员CS_HREDRAW|CS_VREDRAW,目的就是窗口大小发生变化的时候,产生WM_PAINT消息。//加载系统定义的光标。if(NULL==hWnd)//窗口句柄。......

qq_52119661的博客 454

解决 TensorFlow 和 Keras 的 Python 版本兼容问题:详细技术指南

本文提供了TensorFlow和Keras与Python版本不兼容问题的完整解决方案。通过版本对照表指出不同TensorFlow版本对应的Python支持范围,强调2.13.x仅支持Python 3.9-3.11,且不兼容Python 3.12+。给出最佳实践建议:使用虚拟环境管理项目依赖,推荐venv或conda创建独立环境;指导正确安装TensorFlow和Keras版本,建议优先使用tf.keras避免冲突;针对常见报错如DLL加载失败、模块导入错误等提供具体解决方法。最后给出一个在兼容环境中运行的M

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1664

Windows消息列表

353. WM_DDE_ACK=WM_DDE_FIRST+4: 此消息通知一个DDE(动态数据交换)程序已收到并正在处理WM_DDE_POKE,WM_DDE_EXECUTE,WM_DDE_DATA,WM_DDE_ADVISE,WM_DDE_UNADVISE,orWM_DDE_INITIAT消息WM_DDE_DATA=WM_DDE_FIRST+5:一个DDE服354. 务程序提交此消息给DDE客户程序来传递个一数据项给客户或通知客户的一条可用数据项。所有 者应滚动剪贴板图象并更新滚动条的值;

smartDMer的专栏 1183

【全志V821_FoxPi】6-2 IMX219 MIPI摄像头适配

全志V821芯片适配IMX219 MIPI摄像头(2lane)教程,基于FoxPi开发板V1.2 SDK。文章详细介绍了IMX219的技术参数(800万像素、1/4英寸CMOS、支持1080P@30fps输出)及模组接口原理图。重点展示了设备树配置方法,包括PIO引脚定义(TWI0使用PA3/PA4,复位引脚PA2)、TWI0节点设置(100kHz时钟)以及VIND0节点中sensor0的完整配置(I2C地址0x20、MCLK0、RAW格式输出等)。配置过程强调需注意IMX219的器件地址转换(0x10→0

第四维度的博客 2252

AI: 机器学习的模型是如何训练的?(在试错中学习)

一句话理解机器学习一般训练过程 :通过有标签样本来调整(学习)并确定所有权重Weights和偏差Bias的理想值。 训练的目标:最小化损失函数 (损失函数下面马上会介绍) 机器学习算法在训练过程中,做的就是:检查多个样本并尝试找出可最大限度地减少损失的模型;目标就是将损失(Loss)最小化 在这里插入图片描述 上图就是一般模型训练的一般过程(试错过程),其中 模型: 将一个或多个特征作为输入,然后返回一个预测 (y’) 作为输出。为了进行简化,不妨考虑一种采用一个特征并返回一个预测的模型,如下公式

HowieXue 薛永浩的博客 3万+

windows消息机制

Windows消息机制是Windows操作系统下应用程序与操作系统之间的一种重要通信方式。通过这一机制,应用程序能够接收来自操作系统的各种事件和请求,并作出相应的响应和处理。

逆风飞翔的博客 1565

【数据集】全球首个10米分辨率精细分类土地覆盖数据集GLC_FCS10

【数据集】全球首个10米分辨率精细分类土地覆盖数据集GLC_FCS10

WW、forever的博客 1567

Windows消息

Windows是一消息(Message)驱动式系统,Windows消息提供了应用程序与应用程序之间、应用程序与Windows系统之间进行通讯的手段。应用程序要实现的功能由消息来触发,并靠对消息的响应和处理来完成。Windows系统中有两种消息队列,一种是系统消息队列,另一种是应用程序消息队列。计算机的所有输入设备由 Windows监控,当一个事件发生时,Windows先将输入的消息放入系统消息队列

上官天枫的专栏 1036

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Windows消息大全

消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做TMsg,(我转贴的)它在Windows单元中是这样声明的:typeTM

记得忘记@博客 1584

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Windows消息Hook简介

众所周知,Windows应用程序都是消息(事件)驱动的,任何一个窗口都能够接收消息,并对消息进行处理,处理完成后进入下一轮循环。通常情况下,程序员可以在窗口过程中处理接收到的消息,但是在一些应用中常常需要获取和处理另外应用程序的消息,而实现此类功能的技术也就本文要讨论的主题――消息拦截技术。

qq_38933606的博客 1554

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

windows的消息机制总结

DOS靠过程来驱动,而windows靠消息驱动。 MFC/QT是一个广泛使用的变成类库,对windows的消息机制进行了很好的封装。 1、消息的概念: 消息是指windows操作系统发给应用程序的一个通告,告诉程序某个特定的事件发生了。比如用户点击鼠标,会引发相关的消息,并交给相应的程序去处理。最终处理消息的是应用程序的窗口函数,如果程序不负责处理的话,系统会作出默认的处理。 从数据结构的...

Jacoob1024的博客 7848

Windows常用消息大全和Windows消息机制(总结篇)

一种特殊的窗口消息,它从一个窗口发送到另一个窗口以处理来自用户的请求,通常是从子窗口发送到父窗口,例如,点击按钮时,按钮的父窗口会收到WM_COMMAND消息,用以通知父窗口按钮被点击,经测试:子窗口向父窗口发送WM_COMMAND消息,或者称为父窗口会收到WM_COMMAND消息,操作系统并不是通过将WM_COMMAND消息放入到父窗口的消息队列中去,而是直接调用了父窗口的窗口过程,以 WM_COMMAND 为消息标识参数(UINT uMsg),实现这个功能的。

ieusr的专栏 2967

Windows窗口消息认识

Windows窗口消息机制

qq_43386521的博客 717

WINDOWS消息说明

 消息,就是指Wi n d o w s发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Wi n d o w s发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做T M s g,它在Wi n d o w s单

zou5655的专栏 1119

Windows消息详解

WM_NULL 0x0000 空消息,此消息将被接收窗口忽略 WM_CREATE 0x0001 应用程序创建一个窗口 WM_DESTROY 0x0002 一个窗口被销毁 WM_MOVE 0x0003 移动一个窗口 WM_SIZE 0x0005 改变一个窗口的大小 WM_ACTIVATE 0x0006 一个窗口被激活或失去激活状态 WM_SETFOCUS ...

qq_42577465的博客 429

Windows消息分类,消息大全

  1 标准消息: 除 WM_COMMAND 外, 以 WM 开头所有消息。2 非标准消息:以WM_COMMAND 呈现    命令消息 : 由菜单、工具栏按钮、加速键 产生。    通告消息: 由控件产生。标准消息:CWnd 的派生类都可以接受。命令消息、通告消息:CCmdTarget派生的类都可以接受.标准消息不能被 CWinApp 和CDocument 类接受.消息,

3949

Windows 消息队列

Windows 消息队列是 Windows 操作系统中实现通信和交互的核心机制之一。通过深入理解消息队列的原理、消息的分类、消息循环以及消息传递的方式,开发者能够编写出更加健壮、高效且交互性良好的 Windows 应用程序。无论是简单的桌面应用,还是复杂的大型系统,掌握 Windows 消息队列的知识都将为开发工作带来极大的帮助。在实际应用中,根据不同的需求选择合适的消息传递方式和函数接口,能够优化应用程序的性能和响应速度,提升用户体验。

@ 888
上一篇: CImageList使用指南
下一篇: GetWindowDC-BeginPaint-GetDC 区别详解
BBOOT
博客等级 码龄15年 7粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值