问题描述:
我的dialog使用了双缓冲, 我的自绘button类也使用了双缓冲. 但是仍然会闪烁.
我的dialog以每秒一次的频率刷新.
发现, dialog不闪, 反倒是dialog内部的按钮闪了起来.
分析:
由于父窗口和button都使用了双缓冲, 所以, 其本身不会出现闪烁.
问题可能在于:
但是, 由于父窗口和子窗口不是同时画的, 画完不窗口, 再画子窗口, 就会出现闪烁了!!!
解决:
给dialog加上 WS_CLIPCHILDREN .
这样, 父窗口重画的时候, 子窗口可以不用重画,直接把子窗口的东西clip过来.
WS_CLIPCHILDREN 属性!!!