wm_size消息处理与窗口闪烁的问题//该如何正确处理呢???

mirroatl265 2013-03-19 04:35:48
调整窗口大小时,
wm_size//里不Invalidate(),客户区最小化再最大化有一部分客户区显示是白色.客户区显示不完整。
可是调用Invalidate()后,客户区闪烁的厉害。
...全文
166 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shen_wei 2013-03-20
  • 打赏
  • 举报
回复
InvalidateRect( hWnd,NULL,TRUE ); 这个获取整个客户区在进行刷新
mirroatl265 2013-03-20
  • 打赏
  • 举报
回复
抬头看楼上
引用 1 楼 g6785654 的回复:
客户区的作图放在哪里了,贴代码看
mirroatl265 2013-03-20
  • 打赏
  • 举报
回复
qq窗口调整大小;是右上角一直是出现右上角出现重叠现象。但是不闪! 我的出现是整个窗口重叠现象,而且还闪;//虽然不是很厉害。 标题栏重绘代码

去掉这面的代码,就不闪了,但是调整完窗口,某些区域少一块。不知道是不是涉及到其他的消息!
  case WM_SIZE:
		lResult = ::CallWindowProc( pMirroUIData->oldWndProc,hWnd,uMsg,wParam,lParam );
		if( wParam == SIZE_MAXIMIZED || wParam == SIZE_RESTORED )
		{
			LONG lStyle = GetWindowLong( hWnd,GWL_STYLE );
			bool bResize = ( ( lStyle & WS_THICKFRAME ) == WS_THICKFRAME );		
		
			SetWindowRegion( hWnd );
			InvalidateRect( hWnd,NULL,TRUE );
		}
		return lResult;
引用 3 楼 shen_wei 的回复:
上你刷新那部分的代码。。。
shen_wei 2013-03-19
  • 打赏
  • 举报
回复
上你刷新那部分的代码。。。
wushuang443 2013-03-19
  • 打赏
  • 举报
回复
这个问题期待
Ginie 2013-03-19
  • 打赏
  • 举报
回复
客户区的作图放在哪里了,贴代码看

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧