mfc如何实现复杂树控件 [问题点数:20分,结帖人youyicc]

Bbs1
本版专家分:0
结帖率 100%
Bbs2
本版专家分:140
Bbs2
本版专家分:295
Bbs1
本版专家分:18
Bbs1
本版专家分:18
Bbs12
本版专家分:359409
版主
Blank
名人 2013年 荣获名人称号
Blank
探花 2011年 总版技术专家分年内排行榜第三
2010年 总版技术专家分年内排行榜第三
Blank
进士 2012年 总版技术专家分年内排行榜第五
Blank
金牌 2012年1月 总版技术专家分月排行榜第一
Bbs1
本版专家分:0
MFC树形控件(CTreeCtrl)用法(下)
前面一节讲了树形<em>控件</em>Tree Control的简介、通知消息以及相关数据结构,本节继续讲下半部分,包括树形<em>控件</em>的创建、CTreeCtrl类的主要成员函数和应用实例。        树形<em>控件</em>的创建        MFC为树形<em>控件</em>提供了CTreeCtrl类,它封装了树形<em>控件</em>的所有操作。        树形<em>控件</em>的创建也是有两种方式,一种是在对话框模板中直接拖入Tree Contro
C++MFC tab控件和树形控件的联合使用
如题,我现在用MFC做了一个Tab<em>控件</em>有2个选项,并且都是树形,那么这个下层的树形<em>控件</em>在哪里定义描述呢? 是在OnInitDialog()这个函数里吗?那么怎么连接起来?
VC 树控件的拖拽实现 MFC .
只需要将你的树<em>控件</em>类型改成CXTreeCtrl,并将以下头文件:XTreeCtrl.h和<em>实现</em>文件:XTreeCtrl.cpp包含进你的工程。   然后在void CXTreeCtrl::OnLButtonUp(UINT nFlags, CPoint point)这个函数中加入你自己的响应代码,即可完成树<em>控件</em>的拖拽效果。   //XTreeCtrl.h ------------------
MFC制作一个可自由添加删除节点的树(CTreeCtrl)类
微软的MFC提供了强大的界面设计功能,但因为其很多函数过于繁琐,对初学者来说不好上手,而我自己在学习过程中也碰到了很多问题,查了很多文章,在此要特地感谢鸡琢米以及各位在CSDN上些小教程的各位前辈大佬。因此我打算分享一下我的学习经验。 1.第一步在Visual Studio 2017中创建一个对话框工程,并删除原有的3个<em>控件</em> 2.建立完对话框工程后,放置一个Tree Ctrl<em>控件</em>,将Has B
VC 树控件的拖拽实现 MFC
只需要将你的树<em>控件</em>类型改成CXTreeCtrl,并将以下头文件:XTreeCtrl.h和<em>实现</em>文件:XTreeCtrl.cpp包含进你的工程。 然后在void CXTreeCtrl::OnLButtonUp(UINT nFlags, CPoint point)这个函数中加入你自己的响应代码,即可完成树<em>控件</em>的拖拽效果。 //XTreeCtrl.h------------------------------------------------
MFC 树控件 将一棵树全部展开
主要是使用以下两个函数: m_TreeControl是树<em>控件</em>所关联的CTreeCtrl变量。 //展开树<em>控件</em>的所有结点函数,结合下面的函数一起用 void CDialogModelTree::ItemExpandTree() { MyExpandTree(m_TreeControl.GetRootItem()); } //展开树<em>控件</em>的所有结点,结合上面<em>控件</em>一起用 void CDialogM
MFC中CtreeCtrl控件实现三态复选的总结
对网上现有资料整理总结 网上所能查到的所有关于树形<em>控件</em>三态显示的做法都是添加一个已写好的CTreeCtrl类的派生类,但经过Q姐琢磨和测试,根本无需再创建一个派生类就能<em>实现</em>树形<em>控件</em>的三态复选,下面分享具体做法。 1.给树形<em>控件</em>绑定变量 CTreeCtrl m_tc; 2.添加三态显示框bmp资源,如下 3.添加树形<em>控件</em>三态显示效果相关函数 //.h文件中:  BOOL SetSt
MFC树型控件浏览文件目录(一)--显示文件树
转载▼ 本文对MFC中,用树型<em>控件</em><em>实现</em>文件目录的浏览进行了简单的介绍。 主要<em>实现</em>以下几个功能: 1、显示文件目录树; 2、对于文件,在树型<em>控件</em>中双击进行打开; 3、树节点添加简单右键菜单。 系统:windows8.1 工具:Visual Studio2013 一、树型<em>控件</em>显示文件目录树 1、首先,让我们在VS中建立一个MFC工程
单文档mfc添加树形控件
注意:因为某些原因(网上说是vs2010不再支持<em>mfc</em>中的某些<em>控件</em>,具体是什么我也不知道)本方法(嵌入对话条的方法)不能在vs2010上使用,所以如果是使用vs2010的小伙伴们请注意了。 一般的<em>控件</em>在基于对话框的<em>mfc</em>程序中使用非常方便,但在单文档的<em>mfc</em>中却有点麻烦。因为单文档的框架不能直接加各种各样<em>控件</em>,这些<em>控件</em>必须要加在对话框中,然后再把对话框镶嵌在单文档的<em>mfc</em>框架中。刚开始我没注意到
MFC 树控件含有checkbox的鼠标点击处理
首先要在树<em>控件</em>属性上加上checkbox;或者用代码; MFC鼠标点击消息   afx_msg void OnNMClickTreeUnitshow(NMHDR *pNMHDR, LRESULT *pResult); ON_NOTIFY(NM_CLICK, IDC_TREE_UNITSHOW, OnNMClickTreeUnitshow)  代码控制 void CSelectUnit
MFC 树控件遍历
一言不合直接贴代码~~~~ m_tree是树<em>控件</em>绑定的变量 loopthrough(m_tree.GetRootItem()); bool dlg::loopthrough(HTREEITEM t) { if(t) { if(loopthrough(m_tree.GetNextSiblingItem(t)) { if(loopthrough(m_tree.GetChild
MFC树控件CTreeCtrl 创建与鼠标左键单击响应
1.在OnInitDialog中: CTreeCtrl *ctreectrl = (CTreeCtrl *)GetDlgItem(IDC_TREE1);  //调用ModifyStyle方法修改数<em>控件</em>Sytle  ctreectrl-&amp;gt;ModifyStyle(0,TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS);  //设置树<em>控件</em>字体颜色 ...
MFC树形控件(CTreeCtrl)用法(上)
树形<em>控件</em>可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形<em>控件</em>的各种操作。通过调用 BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );创建一个窗口,dwStyle中可以使用以下一些树形<em>控件</em>的
MFC 树形控件CTreeCtrl显示文件路径及文件
在上篇文章中简单讲述了"MFC单文档分割窗口显示图片",但是我想<em>实现</em>的是左边显示图片的路径,右边显示图片的情况,所以这里需要讲述<em>如何</em>使用<em>控件</em>List Control\CListCtrl<em>实现</em>该功能,希望文章能够对大家有所帮助,同时如果文章中有错误或不足之处,还请大家海涵.
MFC学习之 树控件加图标
树<em>控件</em>学习:http://blog.csdn.net/shuilan0066/article/details/6638504 方法很多,常用到的有这两个:截图: 方法一:(加 ico图标,一个一个的加,4*16*16) 准备4张16*16的ico图片 (在树已经可以正常显示的情况下) 在 Dlg.h中声明:CImageList  imagelist; 在Dlg.cpp中: D
CTreeCtrl树控件如何给MFC中的CTreeCtrl树控件添加右键菜单及使用
1、头文件中: // 可以用来屏蔽操作的消息 virtual BOOL PreTranslateMessage(MSG* pMsg); // 右击树<em>控件</em>的节点弹出菜单 afx_msg void OnRclickTreeObjects(NMHDR* pNMHDR, LRESULT* pResult); //展开树<em>控件</em>某一结点下的所有子节点(递归函数) void ExpandAllTreeI...
MFC中树形控件的应用——电话簿
一、电话薄的代码如下: 1、 // PhoneDlg.cpp : implementation file // #include "stdafx.h" #include "Phone.h" #include "PhoneDlg.h" #include "AddDlg.h" #include "ModifyDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #
MFC:树形控件
api解释 函数名称 功能 CTreeCtrlDlg(CWnd* pParent = NULL); 构造函数 void InitTreeFile(); 初始化树形<em>控件</em>,如果复制或用其他对象初始化时需要调用 BOOL SetTreeRoot(const CString strPath); 设置根目录 void SetUnwantedStr...
VS2010-MFC:单文档左侧可停靠对话框(包含树控件)的实现
在程序开发中我们经常看见有一些软件左侧有目录树或者是图层树,点击之后就可以右侧View窗口显示相关的内容,其实<em>实现</em>这种机制有两种方法,第一种就是对MFC的View窗口进行窗口分割,左侧的窗口view类派生于CTreeView,其中CTreeView自带一个变量用于View中的树<em>控件</em>的控制。第二种方法就是用一个可停靠的面板嵌套一个对话框,再在对话框中添加树<em>控件</em>,同样可以达到相同的目的。 以下详解搭
MFC控件编程:列表控件、树控件、属性页对话框 (未完)
一、列表<em>控件</em>
MFC开发自绘控件界面的吐槽
最近,在一家公司要求开发一个PC的Windows下的视频培训客户端。 刚开始的时候,根据主管要求选择VC/MFC加GDI+来绘制图形界面,但是做下去越来越发现MFC这东西做界面实在是太繁琐了,各种鼠标键盘事件都要自己<em>实现</em>、还有坐标计算等等,等等(这里说一下,MFC自带的<em>控件</em>太丑了!所以才要自绘)。 其实,就逻辑而言,界面不就是那些东西么,搞得那么<em>复杂</em>。后来总监来询问进度,我说含有标题栏、列表、
控件 加载磁盘文件/某一目录 层次显示所有文件的实现
一、目的:熟悉在树<em>控件</em>上的相关操作。在用户指定加载某个目录或者磁盘后,可以通过层级结构显示该目录或磁盘下的所有文件,以及文件对应的系统图标,在用户双击摸个文件或者文件夹后可以调用对应的程序打开文件、文件夹;在界面上的Edit Control 上键入关键字可以在用户加载的目录中查找所有对应项,并显示出来。 二、总体效果图: 三、界面总体布局:建立一个基于对话框的程序。两个Edit Control
MFC 树形控件的使用
1、树形<em>控件</em>的属性 TVS_EDITLABELS:允许用户进行节点文本的编辑 TVS_HASBUTTONS:节点左侧添加一个按钮 TVS_HASLINES:父节点与子结点出现连线 TVS_LINESATROOT:子节点与根节点之间出现连线 TVS_NOTOOLTIPS:结点无动态提示 TVS_SINGLEEXPAND:节点的选中(未选中)t7展开(合拢)同步
关于MFC中树形控件(CTreeCtrl)复选框(CheckBox)的显示一致性解决方案
关于MFC中树形<em>控件</em>(CTreeCtrl)复选框(CheckBox)的显示一致性解决方案  树形<em>控件</em>在Windows系统中是很常见的<em>控件</em>,例如资源管理器左侧的窗口中就有用来显示目录的树形视图。树形视图中以分层结构显示数据,每层的缩进不同,层次越低缩进越多。树形<em>控件</em>的节点一般都由标签和图标两部分组成,图标用来抽象的描述数据,能够使树形<em>控件</em>的层次关系更加清晰。 1.关于MFC树形<em>控件</em>基础知识 参
MFC树形控件(CTreeCtrl)用法(下)
前面一节讲了树形<em>控件</em>Tree Control的简介、通知消息以及相关数据结构,本节继续讲下半部分,包括树形<em>控件</em>的创建、CTreeCtrl类的主要成员函数和应用实例。        树形<em>控件</em>的创建        MFC为树形<em>控件</em>提供了CTreeCtrl类,它封装了树形<em>控件</em>的所有操作。        树形<em>控件</em>的创建也是有两种方式,一种是在对话框模板中直接拖入Tree Contro
MFC 菜单 树视图控件 界面切换
MFC 菜单 树视图<em>控件</em> 界面切换 自己做的界面可以切换 VC++编译通过
Qt实现复杂的列表控件
Qt<em>实现</em><em>复杂</em>的列表<em>控件</em> 有人问,<em>复杂</em>列表<em>控件</em>怎么做? <em>控件</em>布局如下图,求指点思路 有高手指点如下, 红框圈起来的是QLabel,1个进度条,2个按钮(toolButton),1个布局,1个QWidget(容器),组成一个widget。 放进QListWidget里。进度条用样式表美化一下,参考:点击这里。 其中主要用这个函数:void QListWidget
MFC中CTreeCtrl展开树形列表节点
void CMenuCreatDlg::OnMENUITEMexpandtree() //展开所有节点 { // TODO: Add your command handler code here MyExpandTree(m_tree.GetRootItem()); } void CMenuCreatDlg::MyExpandTree(HTREEITEM hTreeItem
VC6.0 MFC添加树形控件CTreeCtrl
前面这段转自:http://blog.csdn.net/kongfuxionghao/article/details/11585157 (一)树控制的主要功能 树控制和视(Tree Control&View)主要用来显示具有一定层次结构的数据项,如资源管理器中的磁盘目录等,以供用户在其中进行各种选择。树控制中的每个数据项包括数据项名称的文本字符串和用于表示该数据项的图像,每个数据项下面均可
MFC 树控件 如何为二级节点动态地添加三、四级节点
现函数功能是要为一个二级节点添加对应的三、四级节点: //判断一个str是不是在vec容器中,str为所选择项的文本,vec为存储已经选择的BHID字符串容器 bool CDialogModelTree::IsOrNotInVector(CString str, vector &vec) { if (vec.size()!=0) { for (int i=0;i<vec.size()
MFC树形控件(Tree Control)用法实例:增加节点、删除节点、改变结点名
本程序<em>实现</em>了通过菜单或右击节点来动态增加节点和删除节点,并可以通过双击节点来改变结点的名字。 // 树形<em>控件</em>Dlg.cpp : <em>实现</em>文件 // #include &quot;stdafx.h&quot; #include &quot;树形<em>控件</em>.h&quot; #include &quot;树形<em>控件</em>Dlg.h&quot; #include &quot;afxdialogex.h&quot; #ifdef _DEBUG #define new DEBUG_NEW #end...
MFC开发-MFC 树控件 将一棵树全部展开
主要是使用以下两个函数:m_TreeControl是树<em>控件</em>所关联的CTreeCtrl变量。[cpp] view plain copy//展开树<em>控件</em>的所有结点函数,结合下面的函数一起用  void CDialogModelTree::ItemExpandTree()  {      MyExpandTree(m_TreeControl.GetRootItem());  }    //展开树<em>控件</em>的所有...
MFC树形控件(CTreeCtrl)的保存与读取
其中 对<em>控件</em>中所有节点的操作是最主要的遍历每个节点取得信息这是非常重要的。这里我将我使用树<em>控件</em>的方法写下来,它虽然不完美但很完整,完成了从新增到删除,从保存到读取的全部操作过程。它将保存的结果存于程序目录下的x.ini文件中,你可以打开它来查看保存的信息。这里不但保存了重新构造树结构的信息也保存了附加信息,可以自由修改。最重要的是,这个示例能够支持树结构的任何操作,包括换顺序、增加、删除,这些操作...
MFC 为树形控件添加图标
添加<em>控件</em>,树形<em>控件</em>,静态文本框和编辑框。树形<em>控件</em>属性Has Buttons,Has Lines, Lines At Root 勾选为True. 并为树形<em>控件</em>添加变量,m_webTree 在初始化函数中添加代码: // TODO: 在此添加额外的初始化代码 // 定义树形<em>控件</em>句柄 HTREEITEM hRoot; HTREEITEM hSon; HTREE
mfc BCG 左侧导航栏 树添加右键菜单
vs:vs2010 BCG:BCGControlBar Professional v.22.1 Retail 1、在视图中添加一个自己定义的menu例如 2、在类CWorkSpaceBar类中添加消息WM_CONTEXTMENU并在其中添加如下代码: UINT nFlag = TVHT_ONITEM; CPoint pt; GetCursorPos(&pt);//获取光标在屏幕
VC++ 树形控件与数据库连接的典型实例
VC++ 树形<em>控件</em>与数据库连接的典型实例 VC++树形<em>控件</em>与数据库连接的典型实例代码,<em>实现</em>将数据库中的内容加入树型<em>控件</em>中,并通过建立数据库,再与树型<em>控件</em>相连,<em>实现</em>对数据库的访问,从而开发完成一款可以适时读取数据库的动态树形菜单<em>控件</em>。
MFC中利用树形控件和列表控件来显示显示系统的资源列表
在实际程序开发中,经常需要显示系统的ziyua
MFC中树控件节点的点击位置的判断,涉及CTreeCtrl::HitTest()方法的参数值pFlags的含义区别及用法(pFlags值测试)
上一篇博客https://blog.csdn.net/acoolgiser/article/details/81330200提到了HitTest()方法,但是还没有说清楚用法,本文再通过测试来深入理解。    首先看一下MSDN中关于CTreeCtrl::HitTest()方法的用法说明: https://msdn.microsoft.com/zh-cn/library/x0w7ft34.a...
VS2010-MFC获取某个树控件某个树节点下所有子节点的文本
MFC项目开发过程中需要获取某个树<em>控件</em>下某个树节点下所有的子节点的文本,添加到某个组合框上,网上的相关代码差不多是遍历整个树<em>控件</em>,所以自己就封装了一个函数,用于获取指定树节点下的所有的子节点的文本然后添加到某个组合框中,其中获取的文本被压入CString类型的容器保存。 /*-----GetHTREEITEMallName(CTreeCtrl *ptheTree,HTREEITEM hTreeI
MFC 树形控件 根据当前选中的节点,查找节点下的所有节点
vector&amp;lt;HTREEITEM&amp;gt; hNextItem;void CTreeCtrlTestDlg::treeVisit(CTreeCtrl *pCtrl, HTREEITEM hItem){ if (hItem != NULL) { //判断当前选中的节点是否有子节点 if (pCtrl-&amp;gt;ItemHasChildren(hItem)) { //如果有子节点 ...
一个遍历树控件节点的方法
在vc里使用树<em>控件</em>时,有时候需要遍历树<em>控件</em>的所有节点,包括根节点,这时候你只要用下面的函数就可以了,把hTreeItem传入NULL表明从根节点开始遍历,若传为其他的节点,表明遍历该节点以及下面的所有子节点。 void TraverseTree(HWND hWndTreeView, HTREEITEM hTreeItem, void CALLBACK process(HWND hWndTreeV
MFC树形控件CTreeCtrl使用方法、遍历、SetCheck无效、根据名称获取节点、获取选中节点等问题
MFC树形<em>控件</em>CTreeCtrl使用方法:遍历所有节点、根据名称获取节点、获取选中节点等,解决了树形<em>控件</em>在对话框初始化时SetCheck无效问题
MFC如何操作树控件例子
简单的例子,教你<em>如何</em>操作VC/MFC的树<em>控件</em>。
控件添加编辑框总结
树<em>控件</em>添加编辑框总结1》首先介绍一下树<em>控件</em>在树<em>控件</em>节点上添加编辑框以编辑节点的功能:转自CSDN帖子http://topic.csdn.net/u/20090305/09/96ff46f8-da84-4321-9669-2efcee826a81.html 树<em>控件</em>默认的编辑框无法随意更改位置,你不如自己放置一个编辑框在树<em>控件</em>上,<em>实现</em>编辑框的移动和更改尺寸:1.在对话框的树<em>控件</em>上放置一个文本框,标识符为IDC_EDIT1向对话
MFC树控件节点后加图标实现
MFC树<em>控件</em>未提供节点后加图标的方法,需要自己重绘来<em>实现</em>。 主要方法是,响应NM_CUSTOMDRAW消息,在每个节点后添加自己要展示的图标。 关于NM_CUSTOMDRAW消息的说明,见http://msdn.microsoft.com/en-us/library/ms833744.aspx。 显示效果,如下图。 1、<em>实现</em>源码 重绘树<em>控件</em>类CMyTreeCtrl。 M
CATIA二次开发CAA实现MFC树形控件的方法研究
CATIA使用CAA二次开发的时候,如果需要对树形数据对象<em>实现</em>管理,使用树形<em>控件</em>是非常好的选择。但是,CAA本身提供的<em>控件</em>较少,多数情况无法较好地满足项目要求,如果你的水平足够高,也可以使用CATNavigation3DViewer封装出一个满足要求的树形<em>控件</em>,但是这样的成本会非常高,而且,由于是个人封装得到的<em>控件</em>,效率和可靠性都无法得到较好的保证。 幸好CAA提供对MFC的支持,将MFC控
mfc控件Tree Control 修改添加删除节点
vc树<em>控件</em>Tree Control 1.树形<em>控件</em>的通知消息树形<em>控件</em>的通知消息有很多, TVN_SELCHANGING和TVN_SELCHANGED:在用户改变了对树节点的选择时,<em>控件</em>会发送这两个消息。消息会附带一个指向NMTREEVIEW结构的指针,程序可从该结构中获得必要的信息。两个消息都会在该结构的itemOld成员中包含原来的选择项信息,在itemNew成员中包含新选择项的信息,在acti
MFC TreeCtrl树形控件中限定右键点击节点弹出菜单
一、创建3个菜单,ID分别为IDR_MENU2,IDR_MENU3,IDR_MENU4,这些菜单必须要有子菜单项。 二、在树形<em>控件</em>右键-》属性-》事件-》添加右键点击处理。 三、在消息处理函数中添加代码 void CGar3Dlg::OnRclickTreePhase(NMHDR *pNMHDR, LRESULT *pResult) { // TODO: 在此添加<em>控件</em>通知处
MFC 树形控件与列表控件
初始化区域代码: // TODO: 在此添加额外的初始化代码 srand(time(NULL)); // 添加位图资源,必须要全局变量才行 m_treeImageListRoot.Create(IDB_BITMAP1, 24, 0, RGB(0, 255, 0)); m_treeImageListSon.Create(IDB_BITMAP2, 24, 1, RGB(0, 255,
树形控件的重命名问题
树<em>控件</em>在很多时候都可以用得到,本来觉得网上应该有很多资料,可以找个例子几行行代码就可以解决了的, 但是google了一下,关键字“树形<em>控件</em> 重命名”搜到的网页都不是我想要的,找了两个左右有用的网页看了一下,感觉都没有完全说清楚, 我决定先把必要的东西加上,然后边调边试,总算成功了,不说废话,看下面 首先加上树形<em>控件</em>的两个通知消息:TVN_BEGINLABELEDIT,TVN_
树列表控件CTreeListCtrl类
翻译来源:https://www.codeproject.com/Articles/2913/A-Tree-List-Control 作者:TigerX 下载源文件 - 102 Kb 下载演示文件 - 54.6 Kb 介绍 这是从类派生的CWnd 类。它是一个列表的树<em>控件</em>。 特征 以下是许多功能中的一些:CTreeListCtrl 兼容C
VC快速清空树控件(CTreeCtrl)所有记录的方法,DeleteAllItems的使用
VC6中快速清空树<em>控件</em>(CTreeCtrl)所有记录的方法:   DeleteAllItems清空记时会很慢.解决的方法是使用SetRedraw函数与之配合,用于提高速度.   ctrTree.SetRedraw(FALSE);   //使树<em>控件</em>不可重画   ctrTree.DeleteAllItems();      //删除树的所有节点   //   // 这里可重新插入树的节点 
CTreeCtrl 树控件使用方法总结
MFC Tree Control<em>控件</em>使用   1.InsertItem 添加节点 参数: 文字,图标,父节点 返回: HTREEITEM 示例: 添加一系列节点 HTREEITEM hItem = m_Tree.InsertItem("root",NULL,NULL);///root就是节点的标题 int i,j; for (i=0;i {        HTREEITEM h
MFC 树控件图标未显示完全问题
最近要写一个动态的树<em>控件</em>,这棵树有四层节点,为了美观决定分别为每层节点添加不同的图标。于是,为了找到合适又好看的图标也是找了很久,因此,在这里给大家推荐一个网址,图标种类很多并且每一种都很多,最重要的是很好用,直接搜索你想要的种类就可以啦,还可以随意变换颜色: 点击打开链接 里面的图标只支持PNG格式和矢量格式等,可以用下面的在线转ico来制作相应的图标: 先来讲一下我遇到的问题
MFC树控件CTreeCtrl中为每个item节点动态添加提示信息,并定时更新提示内容
头文件:MTreeCtrl.h #if !defined(AFX_MTREECTRL_H__87B2DD8F_F569_4294_9607_7676050EED34__INCLUDED_) #define AFX_MTREECTRL_H__87B2DD8F_F569_4294_9607_7676050EED34__INCLUDED_ #if _MSC_VER > 1000 #pra
MFC 树控件如何隐藏相应节点的复选框
有时候并不需要树<em>控件</em>所有的节点都显示复选框,这时候就需要隐藏相应节点的复选框,代码如下: m_TreeControl是树<em>控件</em>所关联的CTreeCtrl变量,NrootItem是HTREEITEM定义的根节点; m_TreeControl.SetItemState(NrootItem,INDEXTOSTATEIMAGEMASK(0),TVIS_STATEIMAGEMASK);//隐藏根节点的
MFC vc++ 中CTreeContrl如何自定义实现鼠标单击或双击响应事件 ,即重写类似于控件的响应事件或消息
代码部分摘录自“天上的猩猩的专栏”:https://blog.csdn.net/qq_23992597/article/details/51006920#commentsedit 目的:自定义修改<em>mfc</em>窗口的FileView中已有的树结构,而不是添加的树<em>控件</em> <em>实现</em>的效果如图:点击“地图”后弹出框提示,点击响应效果与<em>控件</em>的响应事件类似 首先需要重写CtreeContrl: ① 在CVie...
MFC对话框中控件 添加右键响应
假设在对话框中添加了一个button按钮:IDC_BUTTON1那么<em>如何</em>添加对其的鼠标右键的响应呢?首先在对话框所在类CXXXDlg里面重载 PreTranslateMessage(MSG *pMsg)接着在CXXXDlg.cpp中添加代码,如下:BOOL CXXXDlg::PreTranslateMessage(MSG *pMsg){// TODO: 在此添加专用代码和/或调用基类if(pMsg->message==WM_RBUTTONDOWN)       //可以改为任何消息{CRect r;::Ge
MFC控件重绘
MFC的一系列重绘<em>控件</em>: 如图所示: 示例下载地址:http://download.csdn.net/detail/qq_23992597/9510696
mfc的CTreeCtrl控件实现windows的资源管理器
记录这个文章没别的意思就是当做是学习笔记,没什么技术含量,因为测试其他功能需要在界面上面方便把东西拷贝到电脑上面,使用需要在测试工程里面直接把windows的资源管理器展示出来,这个东西以前做过,但是代码丢了很久,<em>mfc</em>只是测试的时候用一下,基本没有去细挖,所以这次记录一下代码,这个也简单的显示了一些系统图标。 没什么东西直接上主要代码(系统自己带的代码能不上就不上了)。 BOOL Cwp8M
MFC使用TreeCtrl控件
在开发过程中TreeCtrl<em>控件</em>的使用也比较广泛,比如我们的资源浏览视图,我这里为大家分享一下我使用TreeCtrl<em>控件</em>的一些技巧。 1.我们新建一个Dlg对话框MFC程序 2.拖入一个TreeCtrl<em>控件</em>,<em>控件</em>ID修改为IDC_TREE,把<em>控件</em>的Has Lines属性选择为True(这样能让根与根下的Item有连接线),把<em>控件</em>的Has Buttons属性选择为True(这样可以在父项
递归实现MFC TreeControl动态建树
void CFileView::BulidTreeView( HTREEITEM tree_node){//我的控制类MySingletonManager& my_manager = MySingletonManager::GetSingleton( );//通过名字找到我的对象MyStaff* my_staff = my_manager .SearchStaff(mTreeControl.GetItemText(tree_node).GetBuffer(0) );//遍历这个对象的所有孩子,并添加至Tre
CTreeCtrl---树控件自绘
效果: 1、原理:在CTreeCtrl的派生类CMyTreeCtrl的OnPaint()函数中逐行进行绘制。 2、要点:                  1)创建CTreeCtrl的派生类CMyTreeCtrl;                  2)为树型<em>控件</em>绑定一个<em>控件</em>类型变量CMyTreeCtrl  m_Tree;                  3)设置属性has b
MFC树型控件浏览文件目录(二)--双击打开文件
今天我们来<em>实现</em>在树型<em>控件</em>中双击打开文件的操作,注意这里只是打开文件,并没有打开文件夹(不过你想打开也非常简单)。 转载书接上文,今天我们来<em>实现</em>在树型<em>控件</em>中双击打开文件的操作,注意这里只是打开文件,并没有打开文件夹(不过你想打开也非常简单)。我们需要做以下几件事情: 1、判断鼠标点击了树的哪个节点; 2、根据点击的节点找到对应的文件; 3、将找到的文件打开。 下面我们一个个
VS2013/MFC编程入门之三十(常用控件:树形控件Tree Control 下)
前面一节讲了树形<em>控件</em>Tree Control的简介、通知消息以及相关数据结构,本节继续讲下半部分,包括树形<em>控件</em>的创建、CTreeCtrl类的主要成员函数和应用实例。        树形<em>控件</em>的创建        MFC为树形<em>控件</em>提供了CTreeCtrl类,它封装了树形<em>控件</em>的所有操作。        树形<em>控件</em>的创建也是有两种方式,一种是在对话框模板中直接拖入Tree Control控
CTreeCtrl 树状控件显示展开和折叠的按钮“+/-”
让树状<em>控件</em>显示展开和折叠的按钮其实是很简单的,把 Style 设置成TVS_HASBUTTONS就可以了。不过你可能会发现根节点却没有展开折叠按钮,咋回事呢?折腾半天也没作用,还是看看MSDN的文档吧。 TVS_HASBUTTONS Displays plus (+) and
树形控件和列表控件的结合
C/C++ MFC CListCtrl列表<em>控件</em>和CTreeCtrl树<em>控件</em>的完美结合,对话框模式的完整程序,有VC6.0 VS2008,VS2010的工程文件
MFC中的树控件
树型视的三个结构TVINSERTSTRUCT、TVITEM、NMTREEVIEW   TVINSERTSTRUCT  包含添加新项到树形视<em>控件</em>所使用的信息。这个结构被TVM_INSERTITEM消息使用。这个结构与TV_INSERTSTRUCT结构是一样的,但它已经按当前的命名习惯重命名了。 typedef struct tagTVINSERTSTRUCT { HTREEITEM hPa
树形控件的增删改查(代码)
树形<em>控件</em>的增删改查树形<em>控件</em>的增删改查 树形<em>控件</em>的增删改查树形<em>控件</em>的增删改查
CTreeCtrl::InsertItem给树形视图控件添加一个项目
1:CTreeCtrl::InsertItem给树形视图<em>控件</em>添加一个项目 项目由HTREEITEM句柄来标识,并输入给InsertItem的参数之一是父项目的HTREEITEM句柄。创建子项目就是将一个项目添加到树形视图中并指定一个项目作为父亲。根项目(数的最顶层项目)是通过指定TVI_ROOT作为父亲而创建的。 //Root items first,with automatic sortin
mfc 两层树形控件的初始化
明天补上
响应树控件的消息用ON_NOTIFY
树形<em>控件</em>的消息映射使用ON_NOTIFY宏,形式如同:ON_NOTIFY( wNotifyCode, id, memberFxn ),wNotifyCode为通知代码,id为产生该消息的窗口ID,memberFxn为处理函数,函数的原型如同void OnXXXTree(NMHDR* pNMHDR, LRESULT* pResult),其中pNMHDR为一数据结构,在具体使用时需要转换成其他类型的结
[MFC]CTreeView树形视图、CTreeCtrl树形控件
1. 树形<em>控件</em>和树形视图:     1) 树形<em>控件</em>在Microsoft Windows95中就已经引入,如文件资源管理器中的树形文件列表就是使用树形<em>控件</em><em>实现</em>的,这是树形<em>控件</em>最常见的应用;     2) 树形视图就是将整个树形<em>控件</em>作为视图模板的视图,就和之前做过的Phones列表视图一样,直接将CXXXView继承自CTreeCtrl即可;     3) 我们看到的资源管理器的左侧其实就是一个
三态选择树实现终结者
示例代码运行效果图如下: 在很多情况下,我们经常需要<em>实现</em>树的多态选择,如上图所示,当全部子节点选中的情况下,当前节点才被选中(如图示[荆门市]节点),当子节点部分选中时,当前节点处于第三态(如图示[湖北省]节点)当全部子节点未选中时,当前节点处于未选中的状态(如图示[江苏省]节点)。本文就介绍这种三态选择树的具体<em>实现</em>方法。 在VC知识库第十九期中河南科技大学丛雷朋友也介绍了一种
控件的测试方法
针对各种<em>控件</em>的测试。        在程序中,有各种各样的<em>控件</em>,特别是在我们的CS程序中,用到很多系统标准的<em>控件</em>,对于标准<em>控件</em>的测试,在此列出,如果自定义的<em>控件</em>,后面再详细列一份,比如我们自己的录入<em>控件</em>。 1、  按钮:一般使用按钮,主要是为了执行一系列的事件,在按钮上,大部分只用到了它的单击(CLICK)方法,我们要注意到这么几点。 a)         如果按钮用来管理状态的,比
解决MFC树控件Tree-view的Checkbox通过代码设置打勾SetCheck无效
在OnInitDialog()中加入以下两行代码解决: m_treeCtrl.ModifyStyle(TVS_CHECKBOXES, 0); m_treeCtrl.ModifyStyle(0, TVS_CHECKBOXES); 第一句,表示移除TVS_CHECKBOXES风格,第二句,添加TVS_CHECKBOXES风格。...
树形视图和列表视图中的HitTest
1、引言       HitTest为命中测试的意思。在使用MFC编写程序的时候,在树形视图以及列表视图中通常会涉及到需要获得鼠标当前位置所对应的元素。这种通过光标坐标位置来获得相应元素项的操作我们称之为命中测试。 在树形视图中使用HTREEITEM类型变量来表示视图中的元素项,而在列表视图中可以直接使用整型变量的编号来表示列表视图中对应的元素项。通过调用HitTest()
VC中树控件的用法
树形<em>控件</em>可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形<em>控件</em>的各种操作。通过调用BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );     创建一个窗口,dwStyle中可
MFC 树的增删改
MFC<em>实现</em>树<em>控件</em>的增加,删除,修改(包括图标切换)。
动态添加、删除树控件的节点,获取树形控件的选中项
动态添加、删除树<em>控件</em>的节点,获取树形<em>控件</em>的选中项
mfc实现的简单的图书管理。
用<em>mfc</em>链表、树<em>控件</em><em>实现</em>的一个简单的图书管理系统
MFC一一TreeCtrl树控件的使用
      上一节我们介绍MFCPropertyGridCtrl属性表格<em>控件</em>的时候提到过TreeCtrl与MFCPropertyGridCtrl<em>控件</em>的结合使用,本节我们重点介绍TreeCtrl<em>控件</em>的使用。CTreeCtrl m_CtrlTreeStyles;(1)、<em>控件</em>创建两种方法:1、工具箱手动拖动<em>控件</em>到面板上。2、利用Create代码创建virtual BOOL Create( DWO...
获取CTreeCtrl树控件某个节点的路径
获取类似如下树<em>控件</em>某个节点的路径: 返回值即为此节点的路径值。 CString CFileView::GetItemPath(HTREEITEM hItem) { CString ItemPath; ItemPath.Empty(); CString TemPath(_T("")); while (TRUE) { HTREEITEM hParentItem=m_
MFC 树形控件 实现选择分组下面成员全选
树形<em>控件</em>点击分组全选,取消一个,分组选择变暗 1.添加树形<em>控件</em> 给树形<em>控件</em>添加成员变量CTreeCtrl m_TripleTree; 2.在头文件中添加变量 HTREEITEM m_hTreeItem; 3.再头文件中定义 CImageList m_imList; 4.在初始化中添加 BOOL CTreeDlg::OnInitDialog() { CDialog::OnIni
# 系统应用之TreeView控件显示树状磁盘文件目录及加载图标
资源主要是结合博客文章:http://blog.csdn.net/eastmount/article/details/19453107主要讲述使用C# winForm<em>实现</em>类似于资源管理器的界面,通过TreeView<em>控件</em>显示"我的电脑"所有磁盘文件树状目录,包括"我的文档",所有盘符下子目录.同时通过ImageList加载不同类型icon图标.希望文章对大家有所帮助.
MFC树控件与列表视图控件的响应和数据库记录在列表视图的显示
voidCLostAndFoundView::OnSelchangedTree(NMHDR* pNMHDR, LRESULT* pResult) {     NM_TREEVIEW*pNMTreeView = (NM_TREEVIEW*)pNMHDR;     //TODO: Add your control notification handler code here HTREEITEM
MFC中实现单个控件接收拖拽文件的功能
现在有很多软件都支持拖拽功能,就是用鼠标拖着文件放到软件窗口中某个位置,软件就可以做出相应的反应。比如,Windows自带的播放软件Windows Media Player,你可以拖着一个媒体文件放到它的主窗口中,它就会开始播放这个文件。 怎么让自己的软件也有这个功能呢? 其实,并不是很难,只要让你需要有拖拽功能的<em>控件</em>响应WM_DROPFILES消息就行了。下面以Edit<em>控件</em>和ListBox控
VC 树控件与列表控件的结合
前一阵子写个进程管理器玩,其中要用到一个树<em>控件</em>和列表<em>控件</em>结合的<em>控件</em>,犹如VC调试时查看变量的窗口中的列表可以像树一样展开、关闭,感觉很有意思,就写了一个树<em>控件</em>与列表<em>控件</em>结合的类(其中参考了网上的资料)。该类结合了树<em>控件</em>和列表<em>控件</em>的特点,效果如下图所示要<em>实现</em>这个功能主要是继承CLi
MFC的Tree-view Control树控件Checkbox复选框上下级关联勾选状态
对带复选框的树<em>控件</em>,有个常见的需求,就是当我们勾选了某个父节点时,如果其下有子节点,则所有子节点也应当处于勾选状态。相应地,某个子节点连同其所有兄弟节点被勾选时,相应地其父节点也应当自动被选中。 如此,当我们对树<em>控件</em>的某个节点进行复选操作时,需要处理两个递归逻辑: 1.判断其是否具有子节点,如果有,则将所有子节点都设置为相同的复选状态。子节点的子节点进入递归。 2.判断其同级所有兄弟节点状态...
MFC控件(四)(树视图控件TreeControl)
添加一树视图<em>控件</em>,关联变量:CtreeCtrl m_OrgInfo;    1、对话框类中添加成员变量: CimageList m_ImageList; 2、 m_ImageList.Create(24, 24, ILC_COLOR24|ILC_MASK, 1, 1); 3、     m_ImageList.Add(LoadIcon(AfxGetResourceHandle(), M
MFC树形控件CTreeCtrl显示文件路径及文件
该资源主要是结合http://blog.csdn.net/eastmount/article/details/19120567文章,使用MFC树形<em>控件</em>CTreeCtrl左边显示我的电脑不同盘符下文件夹,双击路径能显示该文件夹下文件图标.是关于树形<em>控件</em>比较好的资源,含注释.
(转)树型控件拖动的完美实现
下载本文源代码  树型<em>控件</em>用来显示具有一定层次结构的数据项时方便、直观,被广泛地应用在各种软件中,如资源管理器中的磁盘目录就用的是树型<em>控件</em>,我们在编程中也会经常用到,但 MFC 中提供的 CTreeCtrl 类并不直接支持拖动节点等高级特性,这使我们程序员编程时有很大限制,又给软件用户带来了一些不便。下面就让我们自己动手来解决这个问题,<em>实现</em>树型<em>控件</em>中节点的拖动。  我们从 CTreeCtrl 中派生了一个类 CXTreeCt
MFC树视图控件 Treecontrol
添加一树视图<em>控件</em>,关联变量:CtreeCtrl m_OrgInfo;    1、对话框类中添加成员变量: CimageList m_ImageList; 2、 m_ImageList.Create(24, 24, ILC_COLOR24|ILC_MASK, 1, 1); 3、     m_ImageList.Add(LoadIcon(AfxGetResourceHandle(),
文章热词 随机森林提升树 树可视化与sklearn库介绍 哈夫曼编码实现 tensorflow实现resnet设计 Gym环境构建实现
相关热词 bootstrap实现树控件 c++ mfc 如何实现并行 bootstrap 树控件 bootstrap 删除 树控件 人工智能如何实现学习 python控件开发教程
我们是很有底线的