在开始具体的VB知识讲述之前,吉大的教程为我们讲述了windows的消息处理机制,并用C语言,简单描述了windows内部的消息处理机制,分了:注册窗口类,创建窗口,显示消息循环,取出发给窗口,函数执行

说实在的,我有点没听明白,后来又查询了一些资料,大概了解了windows消息处理机制是怎么一回事。

首先说一下消息,消息是任何面向对象系统的关键部分,windows环境与应用程序之间的交互,及其与外界的交互就是通过消息来完成的。Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。

Windows的消息系统是由3个部分组成的:

消息队列:Windows能够为所有已注册的应用程序维护一个消息队列。应用程序必须从消息队列中获取

消息,然后分派给某个窗口。

消息循环:通过这个循环机制应用程序从消息队列中检索消息,再把它分派给适当的窗口,然

后继续从消息队列中检索下一条消息,再分派给适当的窗口,依次进行。

窗口过程:每个窗口都有一个窗口过程来接收传递给窗口的消息,它的任务就是获取消息然后

响应它,窗口过程是一个回调函数;处理了一个消息后,它通常要返回一个值给Windows。

注意回调函数是程序中的一种函数,它是由Windows或外部模块调用的。

一个消息从产生到被一个窗口响应,其中有5个步骤:

1) 系统中发生了某个事件。

2) Windows把这个事件翻译为消息,然后把它放到消息队列中。

3) 应用程序从消息队列中接收到这个消息,把它存放在记录中。

4) 应用程序把消息传递给一个适当的窗口的窗口过程。

5) 窗口过程响应这个消息并进行处理。

步骤3和4构成了应用程序的消息循环。消息循环往往是Windows应用程序的核心,因为消息循环

使一个应用程序能够响应外部的事件。消息循环的任务就是从消息队列中检索消息,然后把消息传递给适当的窗口。如果消息队列中没有消息,Windows就允许其他应用程序处理它们的消息。

Windows操作系统最大的特点就是其图形化的操作界面,其图形化界面是建立在其消息处理机制这个基础之上的。

不理解Windows消息处理机制,肯定无法深入的理解Windows编程。可惜我对windows的消息处理机制内部原理还是理解的比较浅,希望随着学习的深入,能理解得更透彻。


参考:
吉大教程
百度百科
廊坊师范学院-图书馆-中国知网-《在VB中运用Windows消息机制》

转载于:https://www.cnblogs.com/spring5/archive/2010/12/15/2485338.html

windows消息处理机制和VB相关推荐

  1. 张赐荣 | Windows 消息处理机制 入门

    张赐荣 | Windows 消息处理机制 入门 [文 / 张赐荣] 事件驱动和消息循环 消息概述 消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了.例如,单击鼠标.改变窗口尺寸.按 ...

  2. VC编程Windows消息处理机制、阻塞试验、SetTimer、MessageBox、小心消息响应处理函数

    VC6标准WIN32程序,Windows消息处理机制: 1.在注册窗口类时,指定了消息处理函数WndProc(). 2.WinMain()里有消息循环: while (GetMessage(& ...

  3. windows消息处理机制

    消息 Windows程序设计是一种完全不同于传统的DOS方式的程序设计方式,它是一种事件驱动的程序设计模式,主要是基于消息的. 例如,当用户在窗口窗口中画图的时候,按下鼠标左键,此时,操作系统会感知到 ...

  4. Windows消息机制-PreTranslateMessage

    PreTranslateMessage作用和使用方法 Windows消息机制的流程: A. 操作系统接收应用程序的窗口消息,将消息投递到该应用程序的消息队列中 B. 应用程序在消息循环中调用GetMe ...

  5. qt 消息处理机制与window消息处理机制的比较

    一:windows程序的消息处理  windows程序的处理大概一致 如下: 1.0 windows 消息处理机制: int WINAPI WinMain(HINSTANCE hInstance, H ...

  6. Windows Hook机制(转贴一)

          最近想写个监视系统的小软件,需要Windows Hook的知识,所以会陆续贴几个关于Hook的文章做参考.       本文将试图以下面的顺序讲解HOOK的大部分内容: 1. WINDOW ...

  7. Android消息处理机制

    Google参考了Windows的消息处理机制,在Android系统中实现了一套类似的消息处理机制.学习Android的消息处理机制,有几个概念(类)必须了解: 1.       Message 消息 ...

  8. Android应用程序消息处理机制(Looper、Handler)分析(1)

    Android应用程序是通过消息来驱动的,系统为每一个应用程序维护一个消息队例,应用程序的主线程不断地从这个消息队例中获取消息(Looper),然后对这些消息进行处理(Handler),这样就实现了通 ...

  9. Windows消息机制要点

    1. 窗口过程     每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ID),和两个消息参数(wP ...

  10. C# 消息处理机制及自定义过滤方式

    转自原文 C# 消息处理机制及自定义过滤方式 一.消息概述 Windows 下应用程序的执行是通过消息驱动的.消息是整个应用程序的工作引擎,我们需要理解掌握我们使用的编程语言是如何封装消息的原理.  ...

最新文章

  1. node.js发送邮件
  2. Windows进程与线程学习笔记(一)—— 进程结构体
  3. 接口测试工具postman安装及使用
  4. python数据类型详解(转自:http://www.cnblogs.com/linjiqin/p/3608541.html)
  5. spring 注释的作用_Spring的@Primary注释在起作用
  6. PDE双曲型方程数值解形式及例题分析
  7. uci数据集_有关葡萄酒质量的数据分析
  8. 华为方舟编译器 PK 微软苹果谷歌编译器,到底谁胜出?
  9. oracle面试题关于课程表获取最高分和名字并且去掉重复,oracle复杂查询练习题
  10. Linux 上的数据可视化工具
  11. 星期一到星期日的英文_缩写_读音_巧记方法
  12. 如何提高关键词的质量度?
  13. Excise_day01
  14. Matlab GUI程序封装成exe文件并在不安装Matlab的电脑上运行
  15. 解决java网络编程IPv6问题
  16. 微信小程序Day2学习笔记
  17. 几款好用的矢量图库网站
  18. python 量化分析 入门_量化入门-小白到菜鸟的学习路线
  19. 计算机没有本地网络,电脑的本地连接不见了怎么办
  20. 零基础学SQL(四、可视化工具连接数据库、数据库创建及删除)

热门文章

  1. 微信小程序云开发教程-微信小程序的JS高级-页面间数据传递
  2. 解决excel导出大数字溢出或者被科学计数法格式化
  3. 学生用计算机如何clean,windows installer clean up,教您电脑如何使用清理实用工具
  4. 创建一个war类型的maven项目
  5. apache php 关闭版本号显示,不显示版本号
  6. gitblit git SERVER window 安装配置 hook post-receive 自动部署
  7. php rsa2 微博,微博登录分析
  8. 阶段3 1.Mybatis_12.Mybatis注解开发_8 mybatis注解开发使用二级缓存
  9. centos6.4-x86-64系统更新系统自带Apache Http Server
  10. Centos 7.x 安装配置tomcat-8过程梳理