树视控件的使用

树视控件详解

TV_ITEM结构和TV_INSERTSTRCT结构的定义:

Code:
  1. typedefstruct_TVITEM{
  2. UINTmask;//说明TVITEM结构中哪些成员有效
  3. HTREEITEMhItem;//项目句柄
  4. UINTstate;//项的状态
  5. UINTstateMask;//状态有效的屏蔽位
  6. LPSTRpszText;//项目名称
  7. intcchTextMax;//pszText所指向的缓冲区的大小
  8. intiImage;//当项目没有选中时关联图像列表的图像索引值
  9. intiSelectedImage;//当项目选中时关联图像列表的图像索引值
  10. intcChildren;//该项目是否包含子项目
  11. LPARAMiParam;//程序定义的32为参数
  12. }TVITEM,FAR*LPTVITEM;
  13. typedefstruct_TVINSERTSTRUCT{
  14. HTREEITEMhParent;//插入项的父项的句柄
  15. HTREEITEMhInsertAfter;//插入处上一项的句柄或位置标志值
  16. TV_ITEMitem;//插入的项目
  17. }TVINSERTSTRUCT,FAR*LPTVINSERTSTRUCT;

树视控件常用的属性有:Has buttons表示父项目的前面有一个“+”或“—”按钮,单机该按钮可以展开或折叠该项目;Has lines表示用连线体现项目之间的层次关系;Edit labels表示可以编辑项目的名称;Check boxes表示项目的左侧有一个复选框;Lines at root表示在项目的最高层用连线将项目与根项目连接;Single expand表示单机项目可以展开或折叠该项目。

封装树视控件的MFC类是CTreeCtrl类。CTreeCtrl类主要的成员函数有:SetImageList()函数设置与树视控件关联的图像列表;GetCount()函数返回控件中项目的数量;GetSelectedItem()函数返回当前选中的项目;GetNextItem()函数获得满足某种条件的项目;GetChildItem()或GetparentItem()函数返回一个项目的子项目或父项目;GetNextSiblingItem()或GetPrevSiblingItem()函数返回下一个或上一个兄弟项;GetRootItem()函数返回根项目;GetItemText()或SetItemText()函数用于获取或设置项目的文本串;GetItemData()或SetItemData()函数获得或设置项目的关联数据;InsertItem()函数插入一个项目;DeleteItem()函数删除一个项目;DeleteAllItem()函数删除所有项目;Expand()函数展开或者折叠项目。

示例:

编写一个对话框应用程序MyTree,对话框中有一个树视控件和其他一些如图所示的按钮。树视控件用于显示一些有层次关系的项目,用户可通过“添加”或“删除”按钮向树视控件中添加或删除一个项目。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值