切换视口,绘制的图形被遮盖,怎么办

mayasongzibin 2009-07-31 10:55:27
采用一个文档,两个视图架构,在一个视图中连续显示文档类中采集的数据,在另外一个视图B中以另外一格式显示数据。

视图B中显示时,视口宽度分成10等份,每隔一秒,用一种颜色填充一等份,B中绘图时间为10秒钟,问题是

在这10秒钟中,当用鼠标将窗口从B切换到窗口A时,由于两个窗口有重叠部分,B中的图形被遮挡,原来黑色的的图形,这时
重叠的部分

变成白色,而且当再次切换回B窗口时,还是那部分被抹去,请问这种情况如何处理,在相应WA_CLICKACTIVE消息的函数中

通过使用Invalidate,发出重绘消息么?还有没有更好的办法
...全文
57 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
雪影 2009-07-31
  • 打赏
  • 举报
回复
雪影 2009-07-31
  • 打赏
  • 举报
回复
之所与变白应为响应OnPaint或OnDraw函数没有中心绘制变白区域的图形。

可以使用双缓冲技术,现在内存中绘制好,然后StretchBlt之类的函数绘制在视图上(在OnPaint或OnDraw函数中绘制)。
mayasongzibin 2009-07-31
  • 打赏
  • 举报
回复
这里补充一下,采用的是非切分窗口,

15,979

社区成员

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

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