当前位置: 首页 > 图文教程 > 开发语言 > VC++ > 在窗体中加入3D Bar

VC++
在Dialog中使用Menu和Toolbar
如何定制对话框中的回车键
再谈 Windows 2000 “打开”文件对话框
Windows2000新型Open对话框的使用
Windows SDK 非模态对话框的消息处理
VC6中使用CHtmlView在对话框控制中显示HTML文件
Windows 2000 UI 新特点之四:其他类型的外壳扩展
Windows 2000 UI 新特点之二:自定义文件夹栏目
Windows 2000 UI 新特点之三:搜索管理器
Windows 2000 UI 新特点之一:信息条提示(Infotip)
数据库异步操作(ADODB)
VC++:小编谈自动注册数据源(DSN)
VC++:小编分享面向对象特征及其优点
VC++:VC++中Windows 3.x的协同多任务
VC++:小编浅谈VC++中的CRecordset类
VC++:小编浅谈ODBC概念,了解ODBC不在是难事
VC++:小编谈用ODBC创建表
VC++:小编浅谈用DAO创建表
VC++:浅析VC++中传统控件的控件通知消息
VC++:小编浅谈静态控件

VC++ 中的 在窗体中加入3D Bar


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 78 ::
收藏到网摘: n/a

在窗体中加入3D Bar


作者 yxbscsc

下载源代码

    经常在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中使用。可以分为以下几步:
  • 1、首先把3DBar.h 和3DBar.cpp 加入到你的工程中。
  • 2、在你使用的类中加入头文件,#include "3dbar.h"
  • 3、申明一个C3DBar对象。C3DBar Bar;
  • 4、在类的初始化中调用Bar的函数:SetBarColour;
  • 5、在你使用的类的OnPaint();函数中调用前面介绍的4个函数就可以了。
例如:
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);}