OnPaint 为何不停的在执行

wangjijian 2010-11-06 11:45:13
在一个对话框的程序中,加了个TabCtrl控件,给Tab控件加了2个页面,在这两个页面中绘图时发现在第一个页面绘图还正常,在第2个页面OnPaint中画图,界面在不断的刷新,不停的闪烁,请问是何原因啊?
...全文
227 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
haogeai123 2010-11-07
  • 打赏
  • 举报
回复
有代码才能“对症下药”
onthebox 2010-11-07
  • 打赏
  • 举报
回复
不建议使用tabcontrol
做标签页的话用CPropertySheet和CPropertyPage的好
这样所有的标签都独立存在,独立运行
用tabcontrol的话,多个页面会有重叠的问题
楼主的问题应该就是这个
schlafenhamster 2010-11-06
  • 打赏
  • 举报
回复
"没有用默认的CPaintDC",可以用ValidateRect()。
wangjijian 2010-11-06
  • 打赏
  • 举报
回复
查了下别的帖子,大概明白了,我没有用默认的CPaintDC 导致没有调用EndPaint 使WM_PAINT消息一直在发,感谢各位的回复
webipstin 2010-11-06
  • 打赏
  • 举报
回复
第二个页面可能是你有控件或其他窗口挡在上面了。
Eleven 2010-11-06
  • 打赏
  • 举报
回复
你代码里怎么写的呢?
wltg2001 2010-11-06
  • 打赏
  • 举报
回复
没有代码不好说,界面不断刷新说明界面中有无效区存在。
pshchao 2010-11-06
  • 打赏
  • 举报
回复
楼主贴出代码来看看
xiaoyilong19 2010-11-06
  • 打赏
  • 举报
回复
没有用默认的CPaintDC 导致没有调用EndPaint 使WM_PAINT消息一直在发

CPaintDC dc(this)这是默认的一句话,确实有必要,以前试过,没有的话就出现问题
tianwaifeimao 2010-11-06
  • 打赏
  • 举报
回复
是不是在onmousemove里invalidate了 呵呵 贴代码吧
m_tornado 2010-11-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wltg2001 的回复:]
没有代码不好说,界面不断刷新说明界面中有无效区存在。
[/Quote]

en~

15,980

社区成员

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

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