当前位置: 首页 > 图文教程 > 开发语言 > VC++ > 在窗体中加入3D Bar
在窗体中加入3D Bar 下载源代码 经常在VCKBASE上面看到很多别人写的文章,想着自己哪天也在上面写点文章呢!正好前几天由于编程的需要。要做一个有3D边框的static控件,于是在查考别人做的3DBar的基础上,自己做了一个C3DBar类,现在把它奉献给大家。下面是C3DBar的使用方法。这个类的使用方法很简单,3DBbar中一共有7个public函数。分别为: void SetBarColour(COLORREF cr); void DrawHorizontal(CDC* pDC, CRect& BarRect); //画水平bar void DrawVertical(CDC*pDC,CRect& BarRect); //画垂直bar void DrawLeft(CDC*pDC,CRect&leftRect); //画左边bar void DrawRight(CDC*pDC,CRect&rightRect); //画右边bar void DrawTop(CDC*pDC,CRect&topRect); //画顶边bar void DrawBottom(CDC*pDC,CRect&bottomRect); //画底边bar从以上我们也可以看到,其实我们在用的时候一般用的是SetBarColour(COLORREF cr)、 DrawLeft、DrawRight、DrawTop和DrawBottom这5个函数,用法也很简单。如:我们在一个自定义的Static CDigiStatic中使用。可以分为以下几步:
void CDigiStatic::OnPaint() { CRect dlgrect; GetClientRect(&dlgrect); CRect rectleft(0,0,dlgrect.Width()/30,dlgrect.bottom),\ rectright(dlgrect.right-dlgrect.Width()/30,0,dlgrect.right,dlgrect.bottom),\ recttop(0,0,dlgrect.right,dlgrect.Width()/30),\ rectbottom(0,dlgrect.bottom-dlgrect.Width()/30,dlgrect.right,dlgrect.bottom); CPaintDC dc(this); // device context for painting Bar.DrawLeft(&dc,rectleft); Bar.DrawTop(&dc,recttop); Bar.DrawBottom(&dc,rectbottom); Bar.DrawRight(&dc,rectright);} |
评论 (0) All