英文单词解释
clip:夹子、子弹夹、回形针;夹住,修剪
sibling:同胞兄弟或姐妹
overlapped:重叠

这两个Window Stype的特性与异同素来不太清楚,今日作一笔记:
MSDN的解释为:

  • WS_CLIPCHILDREN   Excludes the area occupied by child windows when you draw within the parent window. Used when you create the parent window.
  • WS_CLIPSIBLINGS   Clips child windows relative to each other; that is, when a particular child window receives a paint message, the WS_CLIPSIBLINGS style clips all other overlapped child windows out of the region of the child window to be updated. (If WS_CLIPSIBLINGS is not given and child windows overlap, when you draw within the client area of a child window, it is possible to draw within the client area of a neighboring child window.) For use with the WS_CHILD style only. 

    此处另有一文的解释为:

  • JohnCz
    06-27-2006, 09:40 PM

    It is not a property per se.
    WS_xxx are Window styles. Both clip of area of other window when window overlaps another window.
    Clip sibling for example will cause MDI child window to paint itself over another child window (sibling) when overlapped. The same will happen

    WS_CLIPCHILDREN will do exactly the same when parent overlaps child window.

    综上所述
    WS_CLIPCHILDREN,使得父窗体在绘制时留出其上的子窗体的位置不去画它,而那片区域留着子窗体去画。
    WS_CLIPSIBLING,必须用于子窗体,使得该子窗体在收到WM_PAINT时同时令其共父的诸多子窗体(MSDN讲必须不在该区域,即不与之重叠)也会被PAINT。

    //下面也是对WS_CLIPSIBLINGS的理解
    所有的overlapped窗口和popup窗口,都有WS_CLIPSIBLINGS 属性,
    这些窗口不能在它的sibling窗口上绘图

    对于child窗口,如果没有这个属性,它能在它的sibling窗口上绘图

    +-----------+
                      |A             |
                      |   +--------+-------
                      |   |            |     B |
                      |   |  C        |        |
                     +---+-------+       |
                          |                    |
                          +---------------+
    如果A, B都是child窗口,
    如果A具有WS_CLIPSIBLINGS属性,
    那么A重绘时不会重绘C部分

    clip是裁减,去除的意思 相当与英文的Exclude

    个人理解:WS_CLIPCHILDREN和WS_CLIPSIBLING都是为了减少重画,减少闪动,保证窗口的重叠部分只有一个窗口来实现PAINT。

    WS_CLIPCHILDREN与WS_CLIPSIBLINGS 收藏的更多相关文章

    1. WS_CLIPCHILDREN和WS_CLIPSIBLINGS的理解(转载)

      1.1 WS_CLIPCHILDREN WS_CLIPCHILDREN样式从字面上可以理解成ClipChildren,裁减子窗口. MSDN里的E文解释:Excludes the area occup ...

    2. 【MFC】如何在MFC创建的程序中更改主窗口的属性 与 父窗口 WS_CLIPCHILDREN 样式 对子窗口刷新的影响 与 窗体区域绘制问题WS_CLIPCHILDREN与WS_CLIPSIBLINGS

      如何在MFC创建的程序中更改主窗口的属性 摘自:http://blog.sina.com.cn/s/blog_4bebc4830100aq1m.html 在MFC创建的单文档界面中: (基于对话框的, ...

    3. 窗体区域绘制问题WS_CLIPCHILDREN与WS_CLIPSIBLINGS

      WS_CLIPCHILDREN,使得父窗体在绘制时留出其上的子窗体的位置不去画它,而那片区域留着子窗体去画.WS_CLIPSIBLINGS,必须用于子窗体,使得该子窗体在收到WM_PAINT时同时令其 ...

    4. 解决 WPF 嵌套的子窗口在改变窗口大小的时候闪烁的问题

      原文:解决 WPF 嵌套的子窗口在改变窗口大小的时候闪烁的问题 因为 Win32 的窗口句柄是可以跨进程传递的,所以可以用来实现跨进程 UI.不过,本文不会谈论跨进程 UI 的具体实现,只会提及其实现 ...

    5. 使用 SetParent 制作父子窗口的时候,如何设置子窗口的窗口样式以避免抢走父窗口的焦点

      原文:使用 SetParent 制作父子窗口的时候,如何设置子窗口的窗口样式以避免抢走父窗口的焦点 制作传统 Win32 程序以及 Windows Forms 程序的时候,一个用户看起来独立的窗口本就 ...

    6. TAQSkinScrollBar 类美化滚动条再讨论

      再说:TAQSkinScrollBar 类美化滚动条,http://www.138soft.com/?p=156  里面有人提到不可以滚动 滚动的改善方法: unit AQSkinScrollBar; ...

    7. 【转】窗口之间的主从关系与Z-Order

      原文链接:http://www.cnblogs.com/dhatbj/p/3288152.html 说明:这是本人2008年写的一篇旧文,从未公开发表过.其中除了一小段描述Window Mobile平 ...

    8. MFC下OpenGL入门(可以用)

      MFC下OpenGL入门 源文件 1, 建一工程文件,我这里命名为first,现在first工程里面我们没有添加任何东西,所有的东西都是MFC自动帮我们创建的. 2, 添加链接库.这一步很关键.打开菜 ...

    9. 1、基于MFC的OpenGL程序

      首先,使用的库是GLUT以及GLAUX,先下载两者,添加查找路径以及链接   一.单文本文件   工程openGLMFC 1.创建单文本文件   2.添加路径.链接 方法如之前篇章所示, 链接库为op ...

    随机推荐

    1. curl多线程类。

      <?php /* * Curl 多线程类 * 使用方法: * ======================== $urls = array("http://baidu.com" ...

    2. 移动端js插件分享

      分享几个移动端使用的插件,个人感觉挺不错的. 1. TouchSlide1.1 滑动的焦点图  http://pan.baidu.com/s/1i3J6bbB 2. iscroll.js  模拟滚动条 ...

    3. IE的事件与w3c事件的区别

      14. offsetWidth, scrollLeft, scrollHeight?     scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollHeig ...

    4. JS中格式化数据保留两位小数

      问题:在JS中格式化数据保留两位小数的函数的多种方法 最好方法: 保留两位好像是这样吧     var   a   =   9.39393;     alert(a.toFixed(2)); 说明: ...

    5. 利用VHDL读写file文件

      library ieee;     use std.textio.all;     use ieee.std_logic_textio.all;     use ieee.std_logic_1164 ...

    6. android jar 第三方包

      工程交叉了,做相互引用 1.单纯的代码jar  不引用res http://terryblog.blog.51cto.com/1764499/564558 1.2.连带源码一起打包出来 http:// ...

    7. matlab 相关性分析

      Pearson相关系数 考察两个事物(在数据里我们称之为变量)之间的相关程度,简单来说就是衡量两个数据集合是否在一条线上面.其计算公式为: 或或 N表示变量取值的个数. 相关系数r的值介于–1与+1之 ...

    8. IZ65534: 'JAVA.LANG.CLASSFORMATERROR' ERROR FOR A VALID IDENTIFIER

      PAR status Closed as program error. Error description Error Message: The java class could not be loa ...

    9. 十度好友问题(DFS经典应用)

      问题: 在社交网络里(比如 LinkedIn),如果A和B是好友,B和C是好友,但是A和C不是好友,那么C是A的二度好友,给定一个社交网络的关系图,如何找到某一个人的所有十度好友.

    10. 跟我一起学ruby (转)

      跟我一起学ruby By Tiger 注:本教程转载自在游戏先行者论坛,版权属于作者Tiger. 第一篇 第二篇 第一篇 自序 从今天起我就要开始学Ruby了.怎么样,没见吧?一个新人写教程.就凭我坚 ...