GUI 应用程序必须响应来自用户和操作系统的事件。
来自用户的事件包括用户可以与您的程序交互的所有方式:鼠标单击、关键线条、触摸屏笔势等。操作系统中的事件包括程序的 "外部",这些都可能影响程序的行为方式。 例如,用户可能会插入新的硬件设备,或者 Windows 可能进入低功耗状态 (睡眠或休眠) 。
这些事件可以在程序运行期间随时发生,几乎按顺序运行。 如何构建一个程序,该程序的执行流无法提前预测?
为了解决此问题,Windows 使用消息传递模型。 操作系统将消息传递给您的应用程序窗口。 消息只是指定特定事件的数值代码。 例如,如果用户按下鼠标左键,则窗口将收到一条消息,其中包含以下消息代码。