问题是这样的: 我在FormView上放置了一个picture控件,这个控件主要是用来作为显示图像的容器。
当图像显示完毕后,picture上仍然残留有最后一帧的图像,怎么才能把这最后一帧的图像去掉,使picutre控件保留原来的底色 我发现如果将整个窗体最小化,然后再恢复,那么图像就去掉了
于是用spy++看了下窗体最小化的过程,发现有WM_ERASEBKGND消息送出
我在自己的代码中也送出这个消息,可是图像还在 我也试着SetBkColor,但是都不成功! 请大家看看,有什么方法让picture控件在图像显示完毕后,能恢复原来的底色!
当图像显示完毕后,picture上仍然残留有最后一帧的图像,怎么才能把这最后一帧的图像去掉,使picutre控件保留原来的底色 我发现如果将整个窗体最小化,然后再恢复,那么图像就去掉了
于是用spy++看了下窗体最小化的过程,发现有WM_ERASEBKGND消息送出
我在自己的代码中也送出这个消息,可是图像还在 我也试着SetBkColor,但是都不成功! 请大家看看,有什么方法让picture控件在图像显示完毕后,能恢复原来的底色!
解决方案 »
- VC 2010 intellisence 没有可能的附加信息 之 终极解决办法(非使用VA)
- 释放new的cframewnd对象需要重载DestoryWindow?//不重载,系统会自动释放new的对象?
- mciSendCommand函数播放AVI出错
- 如何在文件中添加数据?
- 想问下..MSN的功能夹是怎么做出来的??
- 软件高级用户界面设计专用研讨群
- 聘请P2P软件开发者--价格具体谈
- mfc中一个类如何引用同一个project中的其他类定义的global方法?
- 郁闷ing...
- 在程序退出的时候,是先释放全局变量还是先调了主框架窗口的DestroyWindow?
- 虽然没多分,但还是要散,哈哈!!
- [急!]VC中用ADO连接SQL SERVER 老是找不到连接
InvalidateRect或Invalidate一下,
不太理解 图像显示完毕------------------
是将图像采集到窗体上,如果停止采集,那么picture上保留有最后一帧图像
InvalidateRect或Invalidate一下,---------------------------------我的pic控件已经关联到一个CStatic变量上了,我也使用了InvalidateRect来强制刷新,可是不行! m_pic.GetWindowRect(&rc);
::InvalidateRect(m_pic.m_hWnd,&rc,1);
重载“CWnd::OnEraseBkgnd ”函数!