首页 > 编程语言 > 详细

MFC中CTreeCtrl的使用

时间:2020-10-07 10:14:09      阅读:58      评论:0      收藏:0      [点我收藏+]

一:范例代码:

//树控件使用

    //1 、设置图标

    //准备HICON图标
    HICON icons[4];
    icons[0] = AfxGetApp()->LoadIconW(IDI_ICON1);
    icons[1] = AfxGetApp()->LoadIconW(IDI_ICON2);
    icons[2] = AfxGetApp()->LoadIconW(IDI_ICON3);
    icons[3] = AfxGetApp()->LoadIconW(IDI_ICON4);

    //CImageList list; //必须保存住这个集合 写到.h做成员属性

    //创建图片集合
    list.Create(30, 30, ILC_COLOR32, 4, 4);
    //添加具体的图片
    for (int i = 0; i < 4;i++)
    {
        list.Add(icons[i]);
    }
    m_tree.SetImageList(&list, TVSIL_NORMAL);


    //2 、设置节点
    HTREEITEM root = m_tree.InsertItem(TEXT("根节点"), 0, 0, NULL);
    HTREEITEM parent = m_tree.InsertItem(TEXT("父节点"), 1, 1, root);
    HTREEITEM sub1 = m_tree.InsertItem(TEXT("子节点1"), 2, 2, parent);
    HTREEITEM sub2 = m_tree.InsertItem(TEXT("子节点2"), 3, 3, parent);

    //设置默认选项
    m_tree.SelectItem(sub1);

 运行结果:

技术分享图片

 

 

二:常用函数

遍历树节点相关函数:

HTREEITEM GetRootItem() const;

HTREEITEM GetNextItem(HTREEITEM hItem, UINT nCode) const

HTREEITEM GetChildItem(HTREEITEM hItem) const

HTREEITEM GetNextSiblingItem(HTREEITEM hItem) const

HTREEITEM GetPrevSiblingItem(HTREEITEM hItem) const

HTREEITEM GetParentItem(HTREEITEM hItem) const

 

HTREEITEM GetFirstVisibleItem() const

HTREEITEM GetNextVisibleItem(HTREEITEM hItem) const

HTREEITEM GetPrevVisibleItem(HTREEITEM hItem) const

HTREEITEM GetLastVisibleItem() const

 

获取设置节点标题:

CString GetItemText(_In_ HTREEITEM hItem) const;

BOOL SetItemText(_In_ HTREEITEM hItem, _In_z_ LPCTSTR lpszItem);

 

获得或设置选择的节点:

HTREEITEM GetSelectedItem() const

BOOL SelectItem(HTREEITEM hItem)

是否有子节点:BOOL ItemHasChildren(_In_ HTREEITEM hItem) const;

检測点是否在树节点区域:HTREEITEM HitTest(_In_ CPoint pt, _In_opt_ UINT* pFlags = NULL)const;

推断是否是否最顶层节点用GetParentItem(hItem)== NULL

 

MFC中CTreeCtrl的使用

原文:https://www.cnblogs.com/zwj-199306231519/p/13776044.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!