CLabel函数说明

原作者地址及最新更新:

   http://www.codeproject.com/Articles/215/Extended-Use-of-CStatic-Class-CLabel-1-6



本控件可以实现类似VB中LABEL控件的功能。可能正是许多人寻找已久的.本版本已具备了LABEL控件所有的函数.并且在此基础上支持了许多额外的功能.本控件运用双缓存技术,可以使绘制更快。功能主要在OnPaint函数中执行。

原作者为这款控件取名为CLABLE,并且编制了如下简要介绍.遵照下法,即可很简便的使用本控件.

1. 新建项目:在VC6中用MFC新建一个基于对话框的TestStaticLabel项目,并在对话框中加入控件如图所示,为每一个静态文本设置不同的ID。

2.在项目中插入类文件:把所有label.cpp和label.h文件copy 到项目文件夹下,Project->Add to Project->Files中选上label.cpp和label.h文件, OK; 怎么样,在ClassView中看到了CLabel类吧。 打开ClassWizard若看不到CLabel类,可关闭ClassWizard(不用关闭VC),在项目文件夹下把TestSaticLabel.clw文件删除,再打开ClassWizard,会看到提示:"The classwizard database doesn't exist,.....,would you like to build it from your source files?",选Yes,出现一个对话框,单击 Add All,再单击OK,好了,在ClassWizard中可以看到CLabel类了。

3.为每个要改变设置的static静态文本增加ddx控制变量:在对话框头文件TestSaticLabelDlg.h中加入 #include "label.h";打开ClassWizard,选Member Variables页,选上相应的静态文本ID,单击Add Viriable,在对话框中Category中选control,variable Type选clabel,Variable Name由你自己定吧。(把要改变的ID都加上DDX控制变量)

Clabel支持的API函数说明

CLabel& SetBkColor(COLORREF crBkgnd, 
COLORREF crBkgndHigh = 0
BackFillMode mode = Normal);
设置控件的背景,附加其他填充效果。
CLabel& SetText(const CString& strText)设置控件的文本 内容.
CLabel& SetTextColor(COLORREF crText)设置控件的文本 颜色.
CLabel& SetFontBold(BOOL bBold)修改控件中的文本样式为 粗体.
CLabel& SetFontName(const CString& strFont)修改控件字体.
CLabel& SetFontUnderline(BOOL bSet)为控件字体设置 下划线
CLabel& SetFontItalic(BOOL bSet)为控件设置 Italic 字体
CLabel& SetFontSize(int nSize)设置控件的字体大小
CLabel& SetSunken(BOOL bSet)设置控件的 凹陷 效果
CLabel& SetBorder(BOOL bSet)设置控件的边框
CLabel& FlashText(BOOL bSet)设置控件 文字的闪烁效果
CLabel& FlashBackground(BOOL bSet)设置控件背景的闪烁效果
CLabel& SetLink(BOOL bLink)设置控件的超级链接.可以链接网址
CLabel& SetLinkCursor(HCURSOR hCursor)设置链接的光标
CLabel& SetTransparency(BOOL bTransparency)设置控件背景的透明效果
CLabel& SetFont3D(BOOL bSet,Type3D type)设置3D字体
CLabel& SetRotationAngle(UINT nAngle,BOOL bRotation)为字体设置旋转角度
CLabel& SetText3DHiliteColor(COLORREF cr3DHiliteColor)为3D文本设置高亮颜色效果
CLabel& SetMailLink(BOOL bEnable, BOOL bNotifyParent)为文本设置高亮颜色效果

使用例子:

 m_fname.SetFontName("System");
 m_fsize.SetFontSize(14);
 m_uline.SetFontUnderline(TRUE);
 m_tcolor.SetTextColor(RGB(255,0,0));
 m_bcolor.SetBkColor(RGB(0,255,255));
 m_italics.SetFontItalic(TRUE);
 m_bold.SetFontBold(TRUE);
 m_border.SetBorder(TRUE);
 m_sunken.SetSunken(TRUE);
 m_lblGradient.SetBkColor(RGB(255,255,255),RGB(0,0,255), CLabel::Gradient);

 m_monty.SetFontName("Arial");
 m_monty.SetFontSize(12);
 m_monty.SetTextColor(RGB(255,255,0));
 m_monty.SetFontUnderline(TRUE);
 m_monty.SetBkColor(RGB(0,0,0));
 m_monty.SetFontItalic(TRUE);
 m_monty.SetFontBold(TRUE);
 m_monty.SetBorder(TRUE);
 m_monty.SetSunken(TRUE);



  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值