MFC 中的 Tree Control函数

首页 / MFC入门教程 / MFC 中的 Tree Control函数

Tree View Control 是一个窗口,其中显示项目的层次结构列表,例如文档中的标题,索引中的条目或磁盘上的文件和目录,每个项目都包含一个标签和一个可选的位图图像,并且每个项目都可以具有与其相关联的子项目列表,通过单击一个项目,用户可以展开和折叠子项目的关联列表,它由 CTreeCtrl 类表示。

让无涯教程通过创建一个新的基于MFC对话框的项目来研究一个简单的示例。

链接:https://www.learnfk.comhttps://www.learnfk.com/mfc/mfc-tree-control.html

来源:LearnFk无涯教程网

步骤1 - 创建项目后,您将看到TODO行,即文本控件的标题,删除标题并将其ID设置为IDC_STATIC_TXT。

步骤2 - 为"Static Text"控件添加一个值变量m_strTree。

Tree Control

步骤3 - 从Toolbox工具箱中,拖动“Tree Control”。

Drag Tree Control

步骤4 - 在对话框上,单击“Tree Control”以将其选中。在“Properties”窗口上,将“Buttons”,“Has Lines”,“根Lines At Root”,“Client Edge”和“Modal Frame”属性设置为True。

步骤5 - 为Tee Control添加控制变量m_treeCtrl。

Add Tree Control Var

步骤6 - 这是OnInitDialog()中树形控件的初始化

无涯教程网

BOOL CMFCTreeControlDlg::OnInitDialog() {
   CDialogEx::OnInitDialog();

   //设置此对话框的图标。该框架会自动执行此操作当应用程序的主窗口不是对话框时
   SetIcon(m_hIcon, TRUE);            //Set big icon
   SetIcon(m_hIcon, FALSE);            //Set small icon

   //TODO: Add extra initialization here
   HTREEITEM hItem, hCar;
   hItem = m_treeCtrl.InsertItem(L"Car Listing", TVI_ROOT);
   hCar = m_treeCtrl.InsertItem(L"Economy", hItem);
   m_treeCtrl.InsertItem(L"BH-733", hCar);
   m_treeCtrl.InsertItem(L"SD-397", hCar);
   m_treeCtrl.InsertItem(L"JU-538", hCar);
   m_treeCtrl.InsertItem(L"DI-285", hCar);
   m_treeCtrl.InsertItem(L"AK-830", hCar);
   hCar = m_treeCtrl.InsertItem(L"Compact", hItem);
   m_treeCtrl.InsertItem(L"HG-490", hCar);
   m_treeCtrl.InsertItem(L"PE-473", hCar);
   hCar = m_treeCtrl.InsertItem(L"Standard", hItem);
   m_treeCtrl.InsertItem(L"SO-398", hCar);
   m_treeCtrl.InsertItem(L"DF-438", hCar);
   m_treeCtrl.InsertItem(L"IS-833", hCar);
   hCar = m_treeCtrl.InsertItem(L"Full Size", hItem);
   m_treeCtrl.InsertItem(L"PD-304", hCar);
   hCar = m_treeCtrl.InsertItem(L"Mini Van", hItem);
   m_treeCtrl.InsertItem(L"ID-497", hCar);
   m_treeCtrl.InsertItem(L"RU-304", hCar);
   m_treeCtrl.InsertItem(L"DK-905", hCar);
   hCar = m_treeCtrl.InsertItem(L"SUV", hItem);
   m_treeCtrl.InsertItem(L"FE-948", hCar);
   m_treeCtrl.InsertItem(L"AD-940", hCar);
   hCar = m_treeCtrl.InsertItem(L"Truck", hItem);
   m_treeCtrl.InsertItem(L"HD-394", hCar);

   return TRUE; //除非您将焦点设置为控件,否则返回 TRUE
}

步骤7 - 编译并执行上述代码后,您将看到以下输出。

Tree Control Output

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Service Mesh实战 -〔马若飞〕

互联网人的英语私教课 -〔陈亦峰〕

恋爱必修课 -〔李一帆〕

HarmonyOS快速入门与实战 -〔QCon+案例研习社〕

Vue 3 企业级项目实战课 -〔杨文坚〕

深入拆解消息队列47讲 -〔许文强〕

AI绘画核心技术与实战 -〔南柯〕

AI大模型系统实战 -〔Tyler〕

超级访谈:对话道哥 -〔吴翰清(道哥)〕

好记忆不如烂笔头。留下您的足迹吧 :)