首页  >   经验  >   Windows零基础入门:2.25 类风格CS_BYTEALIGNCLIENT

Windows零基础入门:2.25 类风格CS_BYTEALIGNCLIENT

查看 codexia 的博客 2015-09-22 22:19:59 3265 会员文章,禁止转载
Windows   入门  
手机阅读 | 转发赚积分
手机收藏 | 分享给好友
简介讨论了CS_BYTEALIGNCLIENT和CS_BYTEALIGNWINDOW。字节对齐是为了提高应用程序的性能,让数据都对齐到字节,这样处理起来就很方便,因此效率很高。如果错位到位,那么就要先处理额外的位,然后才是处理字节,多出的处理就是降低效率的了。这个和尺子量线段很相似的道理。然后讨论字节对齐调整了窗口或客户区的水平起始或结束位置,就导致了实际的窗口宽度不是最开始的宽度了。

    上午研究了CS_BYTEALIGNCLIENT和CS_BYTEALIGNWINDOW,然后想深入研究一点,然后可以让你了解的更加清晰明了。然而,上午那一站,让我郁闷了一天。是的,我真的收到打击了。就让我打了一天的酱油。
    因为微软的目的,就是要操作系统中屏蔽底层的各种具体细节,以让程序员可以以更加通用的编程方式达到处理各种设备的目的。今天,我想突破这个,然后去结合底层一点的技术知识来突破屏蔽的障碍。这种屏蔽技术对于开发确实很有好处,让程序员不必关注底层的细节了。然后,对于学习来讲,我们就看不到底层如何实现,也不知道底层的很多技术,所以很多时候也对上层开发造成影响。至少在理解上就是一个很大的问题。不了解底层的一些知识背景,就很难理解上层的一些技术。
    本节所提到的两个窗口类风格CS_BYTEALIGNCLIENT和CS_BYTEALIGNWINDOW,如果没有底层技术背景,根本不知道它在说什么。虽然MSDN做了解释,但是你不知道技术背景,只看得懂文字,而不动背后的意义。这才是我想去深入研究,然后解释给大家听。
    不过,这些方面的资料太少了,研究的还是云里雾里,以至于郁闷死了。大家也不做深入全面的研究,网上很多资料都是翻译MSDN中的一段窗口类风格的解释。我想问,这个有意义吗,还发布到网上。对于什么都不知道的人来说,或许,有点用吧。不过知道点的,这个给真正查资料造成了垃圾信息。我也是醉了。
    不管怎么样,我还是根据我的理解,抽象一点解释这两个风格的作用吧。或许在更新图形这一块的时候,可能寻找到突破,到时再专题解释吧。对于入门,我们不应该卡在这里哦。这里也是给入门者一个概要性的了解而已。
    CS_BYTEALIGNCLIENT为Byte Align Client,中文意思就是字节对齐客户区,也就是说,设置了这个窗口类风格的窗口类,创建的窗口将会按照字节对齐窗口的客户区。这个是在水平方向的,也就是x坐标。这个风格影响窗口的宽度和水平的起始位置,其实就是x坐标值。
    CS_BYTEALIGNWINDOW为Byte Align Window,中文意思就是字节对齐窗口,即设置了这个窗口类风格的窗口类创建的窗口,系统会按字节对齐窗口的水平其实位置和窗口的宽度。
    以上两种风格差不多,一个说的是窗口客户区,一个说的是整个窗口,效果差不多。
    那么问题来了,什么是字节对齐?怎么会影响到窗口的起始水平坐标,即x坐标呢?
    我们这里也不纠结底层的东西了。就按照上层技术来理解。有字节对齐,也就有字节不对齐。我们都知道,一个字节有八位。将多个字节排列成一条线,实际上可以构成最小单元是位。就像一把普通的尺,有最小的刻度毫米,也有大一点的厘米。位就像毫米,字节就像厘米。这样展开后,

开通会员付1C币>>阅读全文
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
收藏 1 点赞 0
公众号
微信赞赏
支付宝赞赏
领支付宝大红包
QQ群

相关阅读

分享到:
分享文章[Windows零基础入门:2.25 类风格CS_BYTEALIGNCLIENT]到QQ空间

Win32课程菜单

猜您感兴趣