很多朋友反应我的仿QQ程序在WIN7下如果调整窗口大小,界面会花,一直没空及没测试条件,最近换了WIN7,终于知道原因了,原来发过一篇BLOG:《
奇怪的问题,InvalidateRect最后一个参数在XP下无效》,XP下无论最后一个参数是TRUE还是FALSE,都会刷新背景,看来WIN7修正了这个问题。仿QQ程序为了防止在XP下闪烁,对此做了处理,在WM_ERASEBKGND直接返回TRUE,导致WIN7下不再刷新背景,解决方法也很简单,只要在WM_SIZE消息里面在最后通知刷新一下背景就可以了:
RINGMAINMSG(WM_SIZE)
{
...
InvalidateRect(m_hWnd,NULL,TRUE);
return res;
}