设为首页 加入收藏

TOP

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

代号在Windows中使用非常频繁。在本章结束之前,我们将遇到HICON(图示代号)、HCURSOR(滑鼠游标代号)和HBRUSH(画刷代号)。

代号是一个(通常为32位元的)整数,它代表一个物件。Windows中的代号类似传统C或者MS-DOS程式设计中使用的档案代号。程式几乎总是通过呼叫Windows函式取得代号。程式在其他Windows函式中使用这个代号,以使用它代表的物件。代号的实际值对程式来说是无关紧要的。但是,向您的程式提供代号的Windows模组知道如何利用它来使用相对应的物件。

匈牙利表示法
 

读者可能注意到,HELLOWIN.C中有一些变数的名字显得很古怪。如szCmdLine,它是传递给WinMain的参数。

许多Windows程式写作者使用一种叫做「匈牙利表示法」的变数命名通则。这是为了纪念传奇性的Microsoft程式写作者Charles Simonyi。非常简单,变数名以一个或者多个小写字母开始,这些字母表示变数的资料型态。例如,szCmdLine中的sz代表「以0结尾的字串」。在hInstance和hPrevInstance中的h字首表示「代号」;在iCmdShow中的i字首表示「整数」。 WndProc的後两个参数也使用匈牙利表示法。正如我在前面已经解释过的,尽管wParam应该更适当地被命名为uiParam(代表「无正负号整数」),但是因为这两个参数是使用资料型态WPARAM和LPARAM定义的,因此保留它们传统的名字。

在命名结构变数时,可以用结构名(或者结构名的一种缩写)的小写作为变数名的字首,或者用作整个变数名。例如,在HELLOWIN. C的WinMain函式中,msg变数是MSG型态的结构;wndclass是WNDCLASSEX型态的一个结构。在WndPmc函式中,ps是一个PAINTSTRUCT结构,rect是一个RECT结构。

匈牙利表示法能够帮助程式写作者及早发现并避免程式中的

後面两个资料结构在WndProc中使用,分别定义了ps和rect结构。

代号简介
 

最後,还有三个大写识别字(见表3-3),用於不同型态的「代号」:

表3-3
识别字含义
HINSTANCE 执行实体(程式自身)代号
HWND 视窗代号
HDC 装置内容代号
首页 上一页 6 7 8 9 10 11 12 下一页 尾页 9/29/29
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇输出文字 下一篇Unicode简介

评论

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