旧帖重发:请问有熟悉Windows图形窗口刷新机制的吗?
本人自己开发了一个GUI,现在在刷新上有个问题处理不好,想借鉴一下windows操作系统是如何处理这个问题的。
例如在桌面上有3个窗口A、B、C,它们的在桌面上的位置为A(100,100,300,300)、B(400,100,600,300)、C(200,50,500,350),C窗口在A、B窗口之上。
问题1:当A、B窗口上图像有刷新时,它们只会刷新没有被C窗口遮住的地方,window是是如何实现这个功能的?它的原理是什么?
问题2:当把C窗口关闭的时候,A和B窗口是不是整个窗口都重画了还是只重画了被C窗口遮住的部分?这个问题扩展一下,是不是桌面上每个窗口关闭时,其它窗口都收到重画的消息?如何判断哪个窗口需要重画哪个窗口不需要重画?
请问有了解这方面的原理的吗?有相关代码更好。谢谢!