MFC 中的 Tree Control函数

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

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

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

步骤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()中树形控件的初始化

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

来源:LearnFk无涯教程网

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

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

技术教程推荐

JavaScript核心原理解析 -〔周爱民〕

性能工程高手课 -〔庄振运〕

小马哥讲Spring核心编程思想 -〔小马哥〕

分布式协议与算法实战 -〔韩健〕

Kafka核心源码解读 -〔胡夕〕

编译原理实战课 -〔宫文学〕

程序员的个人财富课 -〔王喆〕

结构学习力 -〔李忠秋〕

程序员职业规划手册 -〔雪梅〕

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