a) 消息
消息,就是指windows发出的一个通知,告诉应用程序某个事情发生了。例如:点击鼠标,系统会将这一动作翻译成一个消息,通知应用程序,有这么一个行为发生了。按键,改变窗口大小……,这些都能使系统产生一个消息。
消息是被封装在一个固定的结构中的,结构如下:
b) Windows消息系统
Windows的消息系统里一共有3个组成部分:消息队列,消息循环,窗口过程。
消息队列。Windows能够为所有的应用程序维护一个消息队列。应用程序必须从消息队列中获取消息,然后分派给某个窗口。
消息循环。通过这个循环机制应用程序从消息队列中检索消息,再把它分派给适当的窗口,然后继续从消息队列中检索下一条消息,再分派给适当的窗口,依次进行。
窗口过程。每个窗口都有一个窗口过程来接收传递给窗口的消息,它的任务就是获取消息然后响应它。窗口过程是一个回调函数;处理了一个消息后,它通常要返回一个值给windows。
Windows的消息处理过程如下:
1) 系统中发生了某个事件。
2) Windows把这个事件翻译为消息,然后把它放到消息队列中。
3) 应用程序从消息队列中接收到这个消息,把它存放在Tmsg记录中。
4) 应用程序把消息传递给一个适当窗口的窗口过程。
5) 窗口过程响应这个消息并进行处理。