本文主要是介绍vc6.0实现xp风格,gripper does not redraw correctly,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
用vc6.0做出来的界面中自定义的控件都是旧风格的,色彩及样式都没有xp下的好看,滚动条就是明显的例子。关于怎样在实现xp风格有很多方法。查资料发现用的最多的是采用manifest,我也没深究manifest到底是怎么回事,反正也不是专业人生,拿来可以用就行了。具体实现方便可参考网上资料。
但用后有一个新的问题,就是toolbar的左端绘制好像有问题,但发现toobar,gripper(我不知道中文翻成什么)附近的背景色好像没有重绘,网上也有人提到过这个问题,说是什么旧风格的toolbar和xp风格toolbar的尺寸差异造成的,要自己做细微调整。最后在网上找了很久才在一个论坛上发现了一个非常简单的办法。只需要建立一个继承CToolBar的类,然后响应背景重绘消息即可。
BOOL CXPClassicToolbar::OnEraseBkgnd(CDC* pDC)
{
CRect r;
pDC->GetClipBox(&r);
pDC->FillSolidRect(r.left, r.top, r.Width(), r.Height(),
::GetSysColor(COLOR_3DFACE));
return TRUE;
}
来源:www.themssforum.com/MFC/Manifest-grip/
这篇关于vc6.0实现xp风格,gripper does not redraw correctly的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!