CTreeCtrl 父结点联动子结点CheckBox
来源:互联网 发布:淘宝申请签约海外买手 编辑:程序博客网 时间:2024/04/30 08:47
项目需要用到树形控件的多选功能,在google上试了前几个的方法,发现都是一样的,没效果,终于找到一个可以实现的代码
效果图:
代码:
void CCheckBoxTreeDlg::OnNMClickTree1(NMHDR *pNMHDR, LRESULT *pResult){ // TODO: 在此添加控件通知处理程序代码 CPoint point; UINT uFlag; HTREEITEM hTree; BOOL bCheck; GetCursorPos(&point); m_treeTest.ScreenToClient(&point); hTree = m_treeTest.HitTest(point, &uFlag); if(hTree && (TVHT_ONITEMSTATEICON & uFlag)) { bCheck = m_treeTest.GetCheck(hTree); SetChildCheck(hTree, !bCheck); } *pResult = 0;}// 设置子节点是否被选中void CCheckBoxTreeDlg::SetChildCheck(HTREEITEM hRoot, BOOL bCheck){ hRoot = m_treeTest.GetChildItem(hRoot); //获取子项句柄 while (NULL != hRoot) { m_treeTest.SetCheck(hRoot, bCheck); SetChildCheck(hRoot,bCheck); //递归调用 hRoot = m_treeTest.GetNextSiblingItem(hRoot); //获取兄弟的句柄 }}
原文地址:http://www.cnblogs.com/lit10050528/p/3720544.html
0 0
- CTreeCtrl 父结点联动子结点CheckBox
- CTreeCtrl 父结点联动子结点CheckBox
- CTreeCtrl:实现子结点随父结点状态一致的方法
- 父结点、子结点、兄弟结点
- CTreeCtrl 联动选择 checkbox
- CTreeCtrl带CHECKBOX属性,实现联动效果(点击父节点全部子节点被选中)
- 建一颗含有checkbox的树并且选中父节点,其子结点也全部被选中
- MFC CTreeCtrl类的结点遍历查找
- 删除子结点
- 访问子结点childNodes
- 父结点
- 获取CTreeCtrl所有结点的附加数据(ItemData)
- VC 删除Tree某一结点下所有子结点
- MSSQL 查找子结点与遍历叶子结点路径
- 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。
- 在自绘CTreeCtrl控件时,双击父结点时,有效区域和字体的区域不同
- c++输出二叉树叶子结点并输出叶子结点到根结点的路径长度
- 删除父结点
- Java设计模式 —— 策略(Strategy)
- 教育平板加速数字化教育创新
- 约瑟夫环问题
- UILabel 常用属性
- CocoaPods pod install/pod update更新慢的问题
- CTreeCtrl 父结点联动子结点CheckBox
- 网站WEB文档本地读取组件
- <Effective C++>读书笔记-1
- POI操作Excel常用方法总结
- 如果不坚持,到哪里都是放弃
- 左连接右连接介绍
- android系统架构
- 面试就是聊天
- Java设计模式 —— 组合(Composite)