千涯秋瑟 2013-06-07 14:41 采纳率: 0%
浏览 1218

基于VS2005的VC++程序设计中,如何在为树 的节点添加图标,

最好有详细步骤,就是操作步骤,还有代码,谢谢。。如何为access数据库表添加数据库

  • 写回答

2条回答

  • 饭小粒 2017-07-30 02:41
    关注

    CTREECRTL是VC下界面编程中必须掌握的一个基本控件。因此很有必要自己亲手实践一下。
    首先声明一个树:
    [cpp] view plain copy print?
    CTreeCtrl m_tree;

    然后定义节点,生成一棵树即可:
    [cpp] view plain copy print?
    HTREEITEM hParentItem;

    m_tree.ModifyStyle(0,TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES);

    hParentItem = m_tree.InsertItem(_T("parent"),11,11,TVI_ROOT);//树根

    m_tree.InsertItem(_T("son"),0,0,hParentItem,TVI_LAST);

    这样就生成了一棵树了,是不是很简单,呵呵。

    =================================传说中的分割线===============================

    下面介绍一下树节点前面的图标如何添加。
    既然要添加图标,当然需要事先将icon图标添加进资源里面,然后声明一个数组,用来存储这些图标资源,最后把这些资源add进树里面即可。
    [cpp] view plain copy print?
    HICON icon[12];

    icon[0]=AfxGetApp()->LoadIcon(IDI_ICON1);

    ......

    CImageList *m_imagelist = new CImageList;

    m_imagelist->Create(16,16,ILC_COLOR32| ILC_MASK,7,7);//16*16的图标

    m_imagelist->Add(icon[n]);

    注意到,专门又新建了一个CImageList,用来管理这些图标。
    之后就可以向树中添加这些图标了,当然一定要选好要添加图标和对应树节点之间的对应关系。
    [cpp] view plain copy print?
    m_tree.SetImageList(m_imagelist,TVSIL_NORMAL);

    这样就生成了一个带图标的树了。

    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献