首页 > 其他分享 >无涯教程-MFC - Tree Control函数

无涯教程-MFC - Tree Control函数

时间:2023-12-12 17:32:16浏览次数:36  
标签:Control MFC hCar InsertItem 步骤 Tree treeCtrl hItem

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

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

参考链接

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

标签:Control,MFC,hCar,InsertItem,步骤,Tree,treeCtrl,hItem
From: https://blog.51cto.com/u_14033984/8789776

相关文章

  • 无涯教程-MFC - Date & Time Picker函数
    日期和时间选择控件(CDateTimeCtrl)实现了一种直观且可识别的输入或选择特定日期的方法,选择日期后,月份日历控件将自动消失。让无涯教程通过创建一个新的MFC应用程序来研究一个简单的示例。步骤1-删除标题并将其ID设置为IDC_STATIC_TXT。步骤2-为文本控件添加value变量。......
  • 无涯教程-MFC - Timer函数
    MFC计时器既没有按钮来表示它,也没有类,要创建计时器,只需调用CWnd::SetTimer()方法,此函数调用为您的应用程序创建一个计时器,像其他控件一样,计时器使用标识符。让无涯教程创建一个新的基于MFC对话框的应用程序。步骤1-删除标题并将其ID设置为IDC_STATIC_TXT步骤2-为文本控件......
  • 无涯教程-MFC - Checkboxes函数
    复选框是Windows控件,允许用户将项目的值设置或更改为true或false。让无涯教程创建一个新的基于MFC对话框的项目。创建项目后,您将在设计器窗口中看到以下对话框。步骤1-删除TODO行,并拖动一个复选框和一个Edit控件,如以下快照所示。还将复选框的标题更改为"EnableControl"。......
  • 无涯教程-MFC - Combo Boxes函数
    组合框由与静态控件或编辑控件组合的列表框组成,控件的列表框部分可能始终显示,或者仅在用户选择控件旁边的下拉箭头时才下拉。这是Combobox控件的消息映射列表-MessageMapentry描述CBN_DBLCLKON_CBN_DBLCLK(<id>,<memberFxn>)用户在组合框的列表框中双击一个字符串。C......
  • 无涯教程-MFC - List Box函数
    列表框显示用户可以查看和选择的项目列表,例如文件名,列表框由CListBox类表示,在单选列表框中,用户只能选择一项,在多选列表框中,可以选择一系列项目,当用户选择一个项目时,该项目将突出显示,并且列表框会将通知消息发送到父窗口。这是列表框的一些映射条目MessageMapentry描述LBN_......
  • 无涯教程-MFC - Command Button函数
    命令按钮是常规按钮的增强版本,它在左侧显示一个绿色箭头图标,后跟一个常规尺寸的标题,在主标题下,它可以显示另一个较小的标题,作为提示以提供更多信息。这是命令按钮控件的消息映射列表-MessageMapentry描述BN_CLICKEDON_BN_CLICKED(<id>,<memberFxn>)单击按钮时,框架将调......
  • 无涯教程-MFC - Static Text函数
    静态控件显示文本字符串,框,矩形,图标,光标,位图或增强型图元文件,它由CStatic类表示,它可用于标签,框或分离其他控件,静态控件通常不接受输入,也不提供输出。这是CStatic类中的方法列表-Sr.No.Name&描述1Create创建Windowsstatic控件并将其附加到CStatic对象。2DrawItem......
  • DMAengine controller documentation 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/driver-api/dmaengine/provider.html#dmaengine-controller-documentationDMA引擎控制器文档硬件介绍大多数从DMA控制器都具有相同的操作原则。它们具有一定数量的通道用于DMA传输,并具有一定数量的请求线。请求和通道基本上是正交的......
  • 无涯教程-MFC - Bitmap Button函数
    位图按钮在其脸上显示图片或图片和文本,这通常是为了使按钮略显,使用从CButton派生的CBitmapButton类创建位图按钮。这是CBitmapButton类中的方法的列表。Sr.No.Name&描述1AutoLoad将对话框中的按钮与CBitmapButton类的对象相关联,按名称加载位图,并调整按钮的大小以适合位......
  • 无涯教程-MFC - 库资源
    库是一组功能,类或其他资源,可用于需要已经实现的实体的程序,而无需了解这些功能,类或资源是如何创建的或如何创建的功能,库使程序员可以轻松地使用由另一个人或公司创建的函数,类和资源等,并相信此外部源是可靠且高效的。库分为两大类-静态库动态库静态库静态库是一个文件,其中包含......