父窗口 WS_CLIPCHILDREN 样式 对子窗口刷新的影响

写了下面的程序,测试下父窗口设置 WS_CLIPCHILDREN 前后,对父窗口调用 RedrawWindow 或 InvalidateRect 对子窗口刷新造成的影响

 

 

操作

WS_CLIPCHILDREN

WS_CLIPCHILDREN

InvalidateRect

父窗口的无效区域增加

对子窗口无影响

父窗口的无效区域增加

子窗口的无效区域增加

且无效区域坐标相同(屏幕坐标系下)

RedrawWindow

FLAG: RDW_INVALIDATE

父窗口的无效区域增加

对子窗口无影响

父窗口的无效区域增加

子窗口的无效区域增加

且无效区域坐标相同(屏幕坐标系下)

RedrawWindow

FLAG: RDW_INVALIDATE|RDW_ALLCHILDREN

父窗口的无效区域增加

子窗口的无效区域增加

且无效区域坐标相同(屏幕坐标系下)

父窗口的无效区域增加

子窗口的无效区域增加

且无效区域坐标相同(屏幕坐标系下)

RedrawWindow

FLAG: RDW_INVALIDATE|RDW_NOCHILDREN

父窗口的无效区域增加

对子窗口无影响

父窗口的无效区域增加

对子窗口无影响

其他窗口在父子窗口上移动

父窗口会接收到WM_PAINT消息,但是无效区域是 父窗口 排除子窗口后的区域和 其他当前移动的窗口区域的交集

子窗口会接收到wm_paint消息,无效区域是 子窗口和当前移动的窗口的区域的交集

父窗口会接收到WM_PAINT消息,但是无效区域是 父窗口当前移动的窗口区域的交集

 

子窗口会接收到wm_paint消息,无效区域是 子窗口和当前移动的窗口的区域的交集

相关文章:

  • 2021-07-12
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2021-12-29
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-22
  • 2022-12-23
  • 2021-07-23
相关资源
相似解决方案