VC下ctreectrl的使用方法及节点前图标添加方法

CTREECRTL是VC下界面编程中必须掌握的一个基本控件。因此很有必要自己亲手实践一下。

首先声明一个树:

CTreeCtrl m_tree;

然后定义节点,生成一棵树即可:

HTREEITEM hParentItem; m_tree.ModifyStyle(0,TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES); hParentItem = m_tree.InsertItem(_T("parent"),11,11,TVI_ROOT);//树根 m_tree.InsertItem(_T("son"),0,0,hParentItem,TVI_LAST);

 

这样就生成了一棵树了,是不是很简单,呵呵。

 

=================================传说中的分割线===============================

 

下面介绍一下树节点前面的图标如何添加。

既然要添加图标,当然需要事先将icon图标添加进资源里面,然后声明一个数组,用来存储这些图标资源,最后把这些资源add进树里面即可。

HICON icon[12]; icon[0]=AfxGetApp()->LoadIcon(IDI_ICON1); ...... CImageList *m_imagelist = new CImageList; m_imagelist->Create(16,16,ILC_COLOR32| ILC_MASK,7,7);//16*16的图标 m_imagelist->Add(icon[n]);

注意到,专门又新建了一个CImageList,用来管理这些图标。

之后就可以向树中添加这些图标了,当然一定要选好要添加图标和对应树节点之间的对应关系。

m_tree.SetImageList(m_imagelist,TVSIL_NORMAL);

这样就生成了一个带图标的树了。

你可能感兴趣的:(VC下ctreectrl的使用方法及节点前图标添加方法)