MFC树控件CTreeCtrl

Posted Mr康康

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC树控件CTreeCtrl相关的知识,希望对你有一定的参考价值。

1.常用属性

属性

含义

has buttons

True 有展开按钮

has lines

True 有展开线

lines at root

True 有根节点

2.常用接口

接口

功能

AfxGetApp()

获取应用程序对象指针

CWinApp::LoadIcon

加载自定义图标

CImageList::Create

创建图像列表

CImageList::Add

图像列表追加图标

CTreeCtrl::SetImageList

设置图形状态列表

CTreeCtrl::InsertItem

插入节点

CTreeCtrl::SelectItem

设置默认选中项

CTreeCtrl::GetSelectedItem

获取选中项

CTreeCtrl::GetItemText

获取某项内容

3.代码实现

    //图片Icon
    HICON icons[4];
    //获取全局的APP对象
    icons[0] = AfxGetApp()->LoadIconW(IDI_ICON1);//IDI_ICON1为图片ID
    icons[1] = AfxGetApp()->LoadIconW(IDI_ICON2);//...
    icons[2] = AfxGetApp()->LoadIconW(IDI_ICON3);
    icons[3] = AfxGetApp()->LoadIconW(IDI_ICON4);

    //设置使用的图片
    //创建图片
    m_imagelist.Create(30, 30, ILC_COLOR32, 3, 3);
    for (int i = 0; i < 4; i++)
    {
        m_imagelist.Add(icons[i]);
    }

    //准备图片
    m_tree.SetImageList(&m_imagelist, TVSIL_NORMAL);

    //创建节点
    //参数 1.显示内容 2,3显示图片  4.父节点
    HTREEITEM rootItem = m_tree.InsertItem(TEXT("根节点"), 0, 0, NULL);
    HTREEITEM parentItem = m_tree.InsertItem(TEXT("父节点"), 1, 1, rootItem);
    HTREEITEM subItem1 = m_tree.InsertItem(TEXT("子节点"), 2, 2, parentItem);
    HTREEITEM subItem2 = m_tree.InsertItem(TEXT("子节点"), 2, 2, parentItem);

    //设置默认选中
    m_tree.SelectItem(subItem2);

   效果展示:

技术分享

以上是关于MFC树控件CTreeCtrl的主要内容,如果未能解决你的问题,请参考以下文章

MFC控件:树形控件(CTreeCtrl)

MFC 树形控件CTreeCtrl类

如何在运行时创建的 MFC 中获取 Treeview(CTreeCtrl) 的 Click 事件?

MFC:使用CTreeCtrl和CToolbar创建一个类(CWnd?)

关于MFC中的tree控件

暂停渲染/绘图 CTreeCtrl (MFC)