VC5中使用标签控件.doc_第1页
VC5中使用标签控件.doc_第2页
VC5中使用标签控件.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VC5中使用标签控件 VC5中,标签控件是由CTabCtrl类来作数据支持的。做一个标签控件,主要有以下几个步骤:一、在ResourceView标签页(就是VC5左面的标签控件第二项)的对话框中添加TABCTRL(比如取名为MYTABCTRL)。二、在ClassWizard中为刚添加的标签控件关联上一个CTabCtrl变量(比如取名为mytab)。三、为标签控件添加项目。四、到此为止,一个标签控件就做好了。现在便可以用ClassWizard为标签控件添加消息映射了。下面重点介绍为标签控件添加项目的方法。CTabCtrl类有一个成员函数InsertItem,它的原型是:BOOL InsertItem(int nItem,TC_ITEMpTabCtrlItem);其中第一个参数是加入项目的序号,此序号将在调用CTabCtrl的另一个成员函数GetCurSel()时作为返回值。与GetCurSel()对应的就是SetCurSel(int nItem),SetCurSel函数可改变标签控件当前选定的项目,其中nItem就是该项目的序号。InsertItem的关键在于第二个参数PTabCtrlItem。这是一个指向TC_ITEM结构的指针。TC_ITEM结构的定义如下:typedef struct_TC_ITEMUINT mask; 标签控件的类型UINT lnReserved1; VC保留,勿用UINT lnReserved2; VC保留,勿用LPSTR pszText; 标签控件的项目文字int cchTextMax; pszText的长度int iImage; 标签控件的图形序号LPARAM lParam; 用于交换的数据TC_ITEM;在编程中,真正经常使用的只有mask、pszText、iImage三个成员变量。1.mask指定标签控件的类型。它可以是以下三个值:TCIF_TEXT pszText成员有效TCIF_IMAGE iImage成员有效TCIF_PARAM iParam成员有效如果要使用多个属性,应该用按位或运算符“|”连接。例如要使pszText和iImage成员同时有效,则用TCIF_TEXT|TCIF_IMAGE作为mask的值。2.pszText标签控件的项目文字,可直接赋予字符串值。此时标签控件的类型必须有TCIF_TEXT。3.iImage标签控件的图形序号,这是为标签控件添加图形所必须用到的一个成员变量。此标签控件必须有TCIF_IMAGE。在赋值时,只需给这三个(有时是两个)变量赋值就行了。下面为大家介绍iImage的用法。iImage中存储的是项目的图形序号。这个序号所对应的图形(可能为图标和位图)将被显示到标签控件项目文字的左边。这些图形可以是任意大小,但必须一样大。标签控件的每一个项目的iImage组成了一个序列,这个序列所对应的图形是用另一个类CImageList来管理的。下面请看CImageList的用法。我在使用CImageList时,只用到以下几个成员函数:1.BOOL Create(int cx,int cy,UINT nFlags,int nInitial,int nGrow);这个函数建立一个含nGrow个图形(每个图形为cx长,cy高以nInitial为初值:通常为0)的空CImageList;其中有个nFlages参数,它用来指定图形的颜色属性,它的值只能为以下几个值中的一个:ILC_COLOR 使用默认颜色(一般为16色)ILC_COLOR4 使用4位色(16色)ILC_COLOR8 使用8位色(256色)ILC_COLOR16 使用16位色(64K色)ILC_COLOR24 使用24位色(16M色)ILC_COLOR32 使用32位色(4G色)ILC_COLORDDB 使用系统当前色2.BOOL Create(UINT nBitmapID,int cx,int nGrow,COLORREF crMask);这个函数是以nBitmapID所代表的位图(已在rc文件中定义,与定义工具条的位图相似)建立一个含有nGrow个图形(每个图形长为cx)的CImageList;其中crMask指定位图中的什么颜色将被替换为黑色,一般就用黑色(RGB(0,0,0)。3.int Add(CbitmappbmImage,COLORREF crMask);这个函数往CImageList中追加一个位图。其中nbmImage可以通过先定义一个Cbitmap指针,再用Cbitmap的成员LoadBitman来得到。比如:Cbitmapmvbitmap;mvhitmap=new Cbitmap();mvbitmapLoadBitmap(MYPICTURE); MYPICTURE是已定义的位图资源crMask参数与前面相同。4.int Add(HICON hIcon):这个函数往CImageList中追加一个图标。其中hIcon可以用AfxGetApp()LoadIcon(UINT nIDResource)来得到。如:AfxGetApp()LoadIcon(MYICON);其中MYICON是已定义的图标资源,当CImageList定制好后,调用CTabCtrl的成员函数SetImageList,其原型如下:CImageListSetImageList(CImageListpImageList);其中的pImageList正是指向我们刚才定制的CImag

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论