如何在treeview里实现checkboxes和radio按钮?如:树形目录的最后子节点带有radio按钮,而其他节点都带有checkboxes,那位有源码?请指点!!!

解决方案 »

  1.   

    http://www.codeguru.com/Cpp/controls/treeview/misc-advanced/article.php/c721/
      

  2.   


                1:提供 (windows sdk) 类库源代码 (C++ 编写),轻松进行WINDOWS 开发(无需MFC 或 VCL 类库),程序员可轻松进行扩充类库。
                   可用作公司开发类库和WINDWOS培训实例。
                   注:南京市区登门安装和培训:
                   
                具体联系方式: MSN帐号: XYBFIF@ SHOTMALL.COM
                               EMAIL:    [email protected]
      

  3.   

    to: lixiaosan(小三)  非常感谢你的回复:可是我下载的工程不能执行出http://www.codeguru.com/Cpp/controls/treeview/misc-advanced/article.php/c721/ 的结果,:( ,你能给看看嘛? 帮人帮到底!再者,还有其它的合适的例子嘛? 
      

  4.   

    其实可以简单的使用SetItemState来实现,不过需要增加一个imagelist
    m_tree.SetImageList(pstateimage,TVSIL_STATE);然后调用SetItemState来设置
    m_tree.SetItemState(hitem,INDEXTOSTATEIMAGEMASK ( nState ),TVIS_STATEIMAGEMASK);用这种做法,可以不用派生新的类,不过需要自己组织逻辑,比如对于radio按钮的情况,需要自己控制单选,并且需要手动更新节点的state
      

  5.   

    to  flyelf(空谷清音):能给个例子吗?详细点!
      

  6.   

    比如在鼠标单击节点的事件中
    onclicktreeitem(...)
    {
    HTREEITEM hClicked = ...//得到当前点击的节点m_tree.SetItemState(hitem,INDEXTOSTATEIMAGEMASK ( nState ),TVIS_STATEIMAGEMASK);
    // 设置状态,可以是checkbox,也可以是radiobox
    ...
    }
    当然了,此处的checkbox和radiobox都是一个假的,图片而已,具体的还是需要自己处理