树控件的使用

目录

1、修改树控件的基础属性:

[2、准备图标 :](#2、准备图标 :)

(1)、ico后缀的图片放入当前文件路径的rc中

(2)、在Icon中添加资源,导入图片

(3)、准备HICON图标

(4)、创建图标集合

(5)、添加具体的图片

(6)、设置节点

(7)、设置默认选项

(8)、添加一个事件,完成切换出现弹框

[3、最终运行的UI界面 :](#3、最终运行的UI界面 :)

4、上诉代码的实现:


1、修改树控件的基础属性:

1、Has Lines True 出现虚线。

2、Has Buttons Ture 折叠按钮。

3、Line At Root 根节点的连线。

2、准备图标 :

(1)、ico后缀的图片放入当前文件路径的rc中

(2)、在Icon中添加资源,导入图片

(3)、准备HICON图标

(4)、创建图标集合

(5)、添加具体的图片

(6)、设置节点

(7)、设置默认选项

(8)、添加一个事件,完成切换出现弹框

3、最终运行的UI界面 :

4、上诉代码的实现:

cpp 复制代码
//树控件使用

	//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"), 1, 1, parent);
	HTREEITEM sub2 = m_tree.InsertItem(TEXT("子节点2"), 1, 1, parent);

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

	return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}
cpp 复制代码
void CtreeApplication1Dlg::OnTvnSelchangedTree1(NMHDR *pNMHDR, LRESULT *pResult)
{
	LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);
	// TODO: 在此添加控件通知处理程序代码
	*pResult = 0;

	//获取当前的项
	HTREEITEM item =m_tree.GetSelectedItem();

	CString name = m_tree.GetItemText(item);
	MessageBox(name);
}
相关推荐
序属秋秋秋1 小时前
《Linux系统编程之进程基础》【进程优先级】
linux·运维·c语言·c++·笔记·进程·优先级
草莓熊Lotso1 小时前
C++ STL map 系列全方位解析:从基础使用到实战进阶
java·开发语言·c++·人工智能·经验分享·网络协议·everything
_F_y1 小时前
C++IO流
c++
草莓熊Lotso1 小时前
《算法闯关指南:优选算法--模拟》--41.Z 字形变换,42.外观数列
开发语言·c++·算法
张较瘦_1 小时前
Windows Docker使用实战教程
windows·docker·容器
邮专薛之谦5 小时前
Kotlin 全知识点复习+详细梳理
windows·kotlin·android studio·idea
自动化代码美学6 小时前
【Python3.13】官网学习之控制流
开发语言·windows·python·学习
AA陈超7 小时前
ASC学习笔记0020:用于定义角色或Actor的默认属性值
c++·笔记·学习·ue5·虚幻引擎
coderxiaohan7 小时前
【C++】仿函数 + 模板进阶
开发语言·c++
思成不止于此9 小时前
深入理解 C++ 多态:从概念到实现的完整解析
开发语言·c++·笔记·学习·多态·c++40周年