文件名称:VC类似QQ游戏大厅导航的树型控件
文件大小:74KB
文件格式:RAR
更新时间:2012-04-27 11:38:34
VC类似QQ游戏大厅导航的树型控件
第一步:新建一个基于对话框的MFC工程,拖动一棵标准树型控件放于界面之上。添加一个新类CTreeCtrlBT派生自CTreeCtrl。
第二步:为该类添加一些消息响应以及虚函数。其详细作用如下:
void PreSubclassWindow(); //用于添加初始化控件的相关信息
WM_SIZE //控件区域发生变化时候的处理
WM_PAINT //绘制控件
WM_MOUSEMOVE //主要获取鼠标所在位置的单元项
第三步:TreeCtrlBT.h中首先声明一个结构用于保存单元项的相关信息,并把所有项的信息放入一个map。实现代码如下:
typedef struct tagItemMsg {
HTREEITEM hItem; //项的句柄
CBitmap ItemBitmap; //项的位图
COLORREF crTransparent; //透明颜色
tagItemMsg()
{
hItem = NULL;
crTransparent = RGB(255,255,255);
}
~tagItemMsg()
{
if ( ItemBitmap.GetSafeHandle() )
{
ItemBitmap.DeleteObject();
}
}
}ITEM_MSG;
typedef map
【文件预览】:
Text_CTreeBT_Demo
----StdAfx.cpp(219B)
----Text_CTreeBT_Demo.rc(6KB)
----Text_CTreeBT_Demo.cpp(2KB)
----resource.h(1KB)
----Text_CTreeBT_Demo.h(1KB)
----Text_CTreeBT_Demo.clw(2KB)
----Text_CTreeBT_Demo.ncb(89KB)
----Text_CTreeBT_Demo.aps(71KB)
----Text_CTreeBT_Demo.dsp(5KB)
----Text_CTreeBT_DemoDlg.h(2KB)
----ReadMe.txt(4KB)
----TreeCtrlBT.cpp(16KB)
----StdAfx.h(1KB)
----Text_CTreeBT_Demo.dsw(559B)
----TreeCtrlBT.h(4KB)
----Release()
--------Text_CTreeBT_Demo.exe(72KB)
----说明.txt(3KB)
----res()
--------3.bmp(1KB)
--------2.bmp(1KB)
--------Text_CTreeBT_Demo.ico(1KB)
--------Sun.bmp(450B)
--------6.bmp(1KB)
--------4.bmp(1KB)
--------Text_CTreeBT_Demo.rc2(409B)
--------Thumbs.db(14KB)
--------Add.bmp(450B)
--------5.bmp(1KB)
--------1.bmp(1KB)
--------code_project.bmp(27KB)
----Text_CTreeBT_DemoDlg.cpp(9KB)