设为首页 加入收藏

TOP

输出文字(二十五)
2010-12-30 21:10:02 来源: 作者: 【 】 浏览:24234
Tags:输出 文字
M_SIZE讯息。在视窗大小改变时,Windows给视窗讯息处理程式发送一个WM_SIZE讯息。传给视窗讯息处理程式的lParam参数的低字组中包含显示区域的宽度,高字组中包含显示区域的高度。要保存这些尺寸,需要在视窗讯息处理程式中定义两个静态变数:

与cxChar和cyChar相似,这两个变数在视窗讯息处理程式内定义为静态变数,因为在以後处理其他讯息时会用到它们。处理WM_SIZE的方法如下:

实际上您会在每个Windows程式中看到类似的程式码。LOWORD和HIWORD巨集在Windows表头档案WINDEF.H中定义。这些巨集的定义看起来像这样:

这两个巨集传回WORD值(16位元的无正负号整数,范围从0到0xFFFF)。一般,将这些值保存在32位元有号整数中。这就不会牵扯到任何转换问题,并使得这些值在以後需要的任何计算中易於使用。

在许多Windows程式中,WM_SIZE讯息必然跟著一个WM_PAINT讯息。为什么呢?因为在我们定义视窗类别时指定视窗类别样式为:

这种视窗类别样式告诉Windows,如果水平或者垂直大小发生改变, 则强制更新显示区域。

用如下公式计算可以在显示区域内显示的文字的总行数:

如果显示区域的高度太小以至无法显示一个完整的字元,这个公式的结果可以为0。类似地,在显示区域的水平方向可以显示的小写字元的近似数目为:

如果在处理WM_CREATE讯息处理期间取得cxChar和cyChar,则不用担心在这两个计算公式中会出现被0除的情况。在WinMain呼叫CreateWindow时,视窗讯息处理程式接收一个WM_CREATE讯息。在WinMain呼叫ShowWindow之後接收到第一个WM_CREATE讯息,此时cxChar和cyCha

首页 上一页 22 23 24 25 26 27 28 下一页 尾页 25/44/44
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇图形基础 下一篇视窗和讯息

评论

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