请教Eraesbkgrud的问题~

雷宗堂 2006-04-14 10:27:35
我在mouse move消息的时候发出了一个invalidate的消息,在eraesbkgrud处理的时候调用了一个画图函数,但是当一个invalidate发出的时候,画图函数被执行了四次,而且我已经把默认的eraesbkgrud父类功能也屏蔽掉了,这是什么原因?请高手解释一下~~~万分感谢!
...全文
159 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
菲斯可儿 2006-04-14
  • 打赏
  • 举报
回复
用SPY++看一下都发了什么消息。
taianmonkey 2006-04-14
  • 打赏
  • 举报
回复
BOOL CDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
//去掉画图时的水泥板现象,不清除底图
return TRUE;
// return CDialog::OnEraseBkgnd(pDC);
}
菜牛 2006-04-14
  • 打赏
  • 举报
回复
return TRUE;有没有?
雷宗堂 2006-04-14
  • 打赏
  • 举报
回复
我明白了,我的程序界面上有四个按钮,与绘图区一起属于一个窗口,每次重绘程序的时候,程序为四个按钮分别调用了窗口的erasebkgnd函数,如果我把四个按钮拖到窗口之外的时候,就只调用了一次绘图了,看来要把绘图区和控制区分开才行,呵呵

15,976

社区成员

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

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