Web Browser控件和CHtmlView有什么具体应用我也不废话了,咱们开门见山吧。
通常使用上述两个东西的时候会发现切换的时候有很严重的闪烁。
仔细观察你会发现,比方在ChtmlView中,窗口的绘画过程是:先画View的背景,然后在上层画控件(即网页)
解决办法很简单,禁止View进行那无用的导致闪烁的绘制背景过程。
具体做法 :
在派生类里处理WM_ERASEBKGND消息
BOOL CMyHtmlView::OnEraseBkgnd(CDC* pDC)
{
return TRUE;
// return CHtmlView::OnEraseBkgnd(pDC);
}
通过上面的改动以后,你会发现VIEW会跟腾讯的QQ浏览器一样无闪烁:)
Web Browser控件的相应做法类似,不再详述。