MFC使用TreeCtrl控件

本文将分享如何在MFC程序中使用TreeCtrl控件来构建资源浏览视图,包括控件配置、初始化、添加节点等关键步骤,并通过实例展示最终效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在开发过程中TreeCtrl控件的使用也比较广泛,比如我们的资源浏览视图,我这里为大家分享一下我使用TreeCtrl控件的一些技巧。

1.我们新建一个Dlg对话框MFC程序

2.拖入一个TreeCtrl控件,控件ID修改为IDC_TREE,把控件的Has Lines属性选择为True(这样能让根与根下的Item有连接线),把控件的Has Buttons属性选择为True(这样可以在父项中显示加减号)如果还需要复选框的话把Check Boxes属性选择为True就可以了。

3.为TreeCtrl控件关键CTreeCtrl变量m_treectrl

4.在dlg的OnInitDialog输入以下代码:

[html]  view plain copy
  1.        CImageList m_list;  
  2. m_list.Create(16,16,ILC_COLOR24,10,0);   
  3. m_list.SetBkColor(RGB(255,255,255));   
  4. m_list.Add(AfxGetApp()->LoadIcon(IDI_ACCORD));//加载图标  
  5. m_list.Add(AfxGetApp()->LoadIcon(IDI_AUTO));  
  6. m_list.Add(AfxGetApp()->LoadIcon(IDI_AUTOCOMPUTER));  
  7. m_list.Add(AfxGetApp()->LoadIcon(IDI_CAMERA));  
  8. m_Tree_File.SetImageList(&m_list, TVSIL_NORMAL);  
  9.   
  10. HTREEITEM hRootComputer = m_Tree_File.InsertItem(_T("我的电脑"),0,1); //插入根项  
  11. HTREEITEM hRootAuto = m_Tree_File.InsertItem(_T("自动上线主机"),2,3); //插入根项  
  12. HTREEITEM hRootFind = m_Tree_File.InsertItem(_T("符合条件主机"),1,2); //插入根项  
  13.   
  14. HTREEITEM hRootComputer_C = m_Tree_File.InsertItem(_T("C:"),1,1,hRootComputer); //在根项中插入子项  
  15. HTREEITEM hRootComputer_D = m_Tree_File.InsertItem(_T("D:"),1,1,hRootComputer); //在根项中插入子项  
  16. HTREEITEM hRootComputer_E = m_Tree_File.InsertItem(_T("E:"),1,1,hRootComputer); //在根项中插入子项  
  17. HTREEITEM hRootComputer_F = m_Tree_File.InsertItem(_T("F:"),1,1,hRootComputer); //在根项中插入子项  
  18.   
  19. m_Tree_File.InsertItem(_T("文件"),2,4,hRootComputer_C);  //在子项中插入子项  
  20. m_Tree_File.InsertItem(_T("文件"),2,4,hRootComputer_D);  //在子项中插入子项  
  21. m_Tree_File.InsertItem(_T("文件"),2,4,hRootComputer_E);  //在子项中插入子项  
  22. m_Tree_File.InsertItem(_T("文件"),2,4,hRootComputer_F);  //在子项中插入子项  
  23.   
  24. m_Tree_File.Expand(hRootComputer,TVE_EXPAND);//让根项自动展开  
  25.        m_list.Detach();  

现在运行一下程序看一下效果,关于API的详细参数说明,大家可以看一下MSDN!


http://blog.youkuaiyun.com/nonecode/article/details/8124985


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值