自学内容网 自学内容网

Windows图形界面(GUI)-DLG-C/C++ - 树形视图(TreeView)

目录

树形视图(TreeView)

使用场景

消息处理

示例代码


树形视图(TreeView)

使用场景

  • 文件浏览器:显示文件和目录的层次结构。
  • 设置菜单:在配置界面中显示嵌套的选项。
  • 组织结构图:显示组织的层次结构。
消息处理

  • TVN_SELCHANGED:当用户选择树视图中的不同节点时发送。
  • TVN_ITEMEXPANDED:当用户展开或折叠树视图中的节点时发送。
示例代码
case WM_INITDIALOG:
{
// 初始环境
INITCOMMONCONTROLSEX initComm = { 0 };
initComm.dwSize = sizeof(INITCOMMONCONTROLSEX);
initComm.dwICC = ICC_WIN95_CLASSES;
InitCommonControlsEx(&initComm);

// 初始控件
HWND hTree = GetDlgItem(hwnd, IDC_TREE2);

// 插入根节点
TVINSERTSTRUCT tvi = { 0 };
tvi.hParent = TVI_ROOT;
tvi.hInsertAfter = TVI_LAST;
tvi.item.mask = TVIF_TEXT;
tvi.item.pszText = (LPWSTR)TEXT("计算机");
HTREEITEM hRoot = TreeView_InsertItem(hTree, &tvi);

// 插入子节点
tvi.hParent = hRoot;
tvi.item.pszText = (LPWSTR)TEXT("本地磁盘(C)");
HTREEITEM hC = TreeView_InsertItem(hTree, &tvi);

tvi.hParent = hC;
tvi.item.pszText = (LPWSTR)TEXT("Windows");
TreeView_InsertItem(hTree, &tvi);

tvi.hParent = hRoot;
tvi.item.pszText = (LPWSTR)TEXT("本地磁盘(D)");
HTREEITEM hD = TreeView_InsertItem(hTree, &tvi);

tvi.hParent = hD;
tvi.item.pszText = (LPWSTR)TEXT("Debug");
TreeView_InsertItem(hTree, &tvi);

return TRUE;
}

原文地址:https://blog.csdn.net/2301_80612536/article/details/140530735

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!