设为首页 加入收藏

TOP

视窗和讯息(八)
2010-12-30 21:09:07 来源: 作者: 【 】 浏览:17263
Tags:视窗 讯息

前面两个资料结构在WinMain中使用,分别定义了两个名为msg和wndclass的结构,

系统上移植到未来的使用32位元(或者其他)技术的作业系统上。这种作法并不如当时每个人想像的那样顺利,但是这种概念基本上是正确的。

有时这些新的资料型态只是为了方便缩写。例如,用於WndProc的第二个参数的UINT资料型态只是一个unsigned int (无正负号整数),在Windows 98中,这是一个32位元的值。用於WinMain的第三个参数的PSTR资料型态是指向一个字串的指标,即是一个char *。

其他资料型态的含义不太明显。例如,WndProc的第三和第四个参数分别被定义为WPARAM和LPARAM,这些名字的来源有点历史背景:当Windows还是16位元系统时,WndProc的第三个参数被定义为一个WORD,这是一个16位元的 无正负号短 (unsigned short)整数,而第四个参数被定义为一个LONG,这是一个32位元有正负号长整数,从而导致了文字「PARAM」前面加上了前置字首「W」和「L」。当然,在32位元的Windows中,WPARAM被定义为一个UINT,而LPARAM被定义为一个LONG(这就是C中的long整数型态),因此视窗讯息处理程式的这两个参数都是32位元的值。这也许有点奇怪,因为WORD资料型态在Windows98中仍然被定义为一种16位元的 无正负号 整数,因此「PARAM」前的「W」就有点误用了。

WndProc函式传回一个型态为LRESULT的值,该值简单地被定义为一个LONG。WinMain函式被指定了一个WINAPI型态(在表头档案中定义的所有Windows函式都被指定这种型态),而WndProc函式被指定一个CALLBACK型态。这两个识别字都被定义为_stdcall,表示在Windows本身和使用者的应用程式之间发生的函式呼叫的呼叫参数传递方式。

HELLOWIN还使用了Windows表头档案中定义的四种资料结构(我们将在本章稍後加以讨论)。这些资料结构如表3-2所示。

表3-2
结构含义
MSG 讯息结构
WNDCLASS 视窗类别结构
PAINTSTRUCT 绘图结构
RECT 矩形结构
首页 上一页 5 6 7 8 9 10 11 下一页 尾页 8/29/29
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇输出文字 下一篇Unicode简介

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: