消息机制、消息循环、窗口过程 海疗 消息机制 用户在窗口上的操作有很大随意性,故 Windows窗口程序的执行没 有固定的路径,而有很大的随机性。 Windows程序的执行是事件驱 动的,窗口上发生某个事件,系统捕获该事件后用消息给应用程序 进行通知。 Windows程序的基本结构 小结 消息用一个结构体类型定义: typedef struct tagMSG t 访问主页 HWNDhwnd; //窗口句柄 标题页 UINT messagei //消息(事件)标识 WPARAM WParam //消息的第一附加数据,依 message而不同 LPARAM IParam; //消息的第二附加数据,依 message而不同 DWORD time //事件通知时的时间 POINT //事件通知时鼠标光标的位置,屏幕座标 第9页共13页 FMSG, *PMSG; 全屏显示 每个窗口都维护一个消息队列,系统通知给应用程序的事件以消息 关闭 形式存放在此队列中Windows§SÄ( ( ¯ Ì I K JJ II J I 1 9 13 £ ¶ w « ' 4 ò Ñ ⑧ EÅ!EÌ!IL§ ✑ EÅ ^r3Iþöké¿5§WindowsI§S1v k½´»§ kéÅ5"Windows§S1´¯° ħIþu),¯§XÚÓ¼T¯^EA^§S ?1Ï" E^(Na.½Âµ typedef struct tagMSG { HWND hwnd; //IéY UINT message; //E£¯¤I£ WPARAM wParam //E1N\êâ§message ØÓ LPARAM lParam; //E1N\êâ§message ØÓ DWORD time; //¯Ïm POINT pt; //¯ÏàI1I §¶4I }MSG, *PMSG; zIÑoEè§XÚÏA^§S¯±E /ª3dè¥