怎样让树形控件同步展开 现在要做一个软件,用到树形控件,不知道怎么让它的子结点同步展开.比如我在编辑框中输入一个子节点的值,右边没有展开的节点会展开. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 自己写算法遍历整棵树,展开遍历的每个节点就是了。 TreeCtrl没有提供专门的函数展开所有节点,要自己写递归算法! HTREEITEM CBrowserView::FindNode(HTREEITEM hSubRoot, const CString & text){ if (hSubRoot == NULL) return NULL; //判断是否符合条件,如是,返回该节点的举柄; if (m_tree.GetItemText(hSubRoot) == text) return hSubRoot; hSubRoot = m_tree.GetChildItem(hSubRoot); do { HTREEITEM ht; //递归调用FindNode; if ((ht = FindNode(hSubRoot, text)) != NULL) return ht; } while ((hSubRoot = m_tree.GetNextSiblingItem(hSubRoot)) != NULL); return NULL;} C++/CLI登陆对话框编程出错 困惑我很久的问题,中高级程序或设计人员请帮个忙!!! 为什么要建立compatibledc CTreeControl的滚动条问题 * 英文 wildcard ,?英文是什么 to: Xiaohyy( 醉大饿极) 初学者求助! 如何让install shield支持生成中文安装路径名称? 分割字符串的子函数 MFC下使用ODBC连接Oracle数据库问题 一个关于图片存储的问题 图像显示的问题
{
if (hSubRoot == NULL) return NULL; //判断是否符合条件,如是,返回该节点的举柄;
if (m_tree.GetItemText(hSubRoot) == text)
return hSubRoot;
hSubRoot = m_tree.GetChildItem(hSubRoot);
do
{
HTREEITEM ht;
//递归调用FindNode;
if ((ht = FindNode(hSubRoot, text)) != NULL)
return ht; }
while ((hSubRoot = m_tree.GetNextSiblingItem(hSubRoot)) != NULL);
return NULL;
}