原作者地址及最新更新
http://www.codeproject.com/KB/static/clabel.aspx
Introduction
本控件可以实现类似VB中LABEL控件的功能。可能正是许多人寻找已久的.本版本已具备了LABEL控件所有的
函数.并且在此基础上支持了许多额外的功能.本控件运用双缓存技术,可以使绘制更快。
功能主要在OnPaint函数中执行。
原作者为这款控件取名为CLABLE,并且编制了如下简要介绍.遵照下法,即可很简便的使用本控件.
1. 新建项目:在VC6中用MFC新建一个基于对话框的TestStaticLabel项目,并在对话框中加入控件如图所示,为每一个静态文本设置不同的ID。(在Static控件的Properties中.看看我怎么设置的,随心所欲,最好便于记忆,便于今后自己查阅,这是一个良好的编程习惯,此乃废话);
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, | 设置控件的背景,附加其他填充效果。 |
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) | 为文本设置高亮颜色效果 |