【问题标题】:Are child controls painted after the parent Window?子控件是在父窗口之后绘制的吗?
【发布时间】:2015-06-13 08:26:58
【问题描述】:

假设我有以下带有按钮的窗口:

如果我最小化并恢复窗口,则会发送两条WM_PAINT 消息,一条用于窗口,一条用于按钮。

窗口的WM_PAINT 消息将请求重新绘制整个窗口,而按钮的WM_PAINT 消息将请求重新绘制按钮。

如果先重绘Button,再重绘Window,是不是意味着Window的绘制会覆盖Button,使其不可见?那么这是否意味着Window是在Button之前绘制的?

【问题讨论】:

  • Windows 使用 画家算法。先垫底。因此,您想象的故障模式就不会发生。即使应用程序有错误并且以错误的方式进行处理,WS_CLIPCHILDREN 样式标志仍然可以防止出现问题。

标签: c winapi


【解决方案1】:

子控件是否绘制在父窗口之后?

是的。

为同一个父母(兄弟姐妹)的孩子绘画是相当复杂的。此处涵盖了该主题:MSDN: Child Window Update Region

【讨论】:

猜你喜欢
  • 2010-10-05
  • 1970-01-01
  • 2021-12-04
  • 1970-01-01
  • 2013-02-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-29
相关资源
最近更新 更多