+ -
当前位置:首页 → 问答吧 → CTreeCtrl 重绘后(改变+-号图标),怎么才能让checkbox显示出来

CTreeCtrl 重绘后(改变+-号图标),怎么才能让checkbox显示出来

时间:2011-12-13

来源:互联网

CTreeCtrl 重绘后(改变+-号图标),怎么才能让checkbox显示出来,是不是也需要自绘?
怎么显示checkbox,并实现其功能。

作者: woolin1125   发布时间: 2011-12-13

求指点。。。

作者: woolin1125   发布时间: 2011-12-13

CTreeCtrl 重绘跟checkbox有啥关系
checkbox你要显示啥啊

作者: liujie250079934   发布时间: 2011-12-13

树形控件中带checkbox,就是用来选择的那个。属性里面有has button:+ - 号图标,checkbox就是每个item最前面的那个。 
引用 2 楼 liujie250079934 的回复:
CTreeCtrl 重绘跟checkbox有啥关系
checkbox你要显示啥啊

作者: woolin1125   发布时间: 2011-12-13

您给我的那个代码,能不能让checkbox显示出来啊。我怎么弄也弄不出来。

引用 2 楼 liujie250079934 的回复:
CTreeCtrl 重绘跟checkbox有啥关系
checkbox你要显示啥啊

作者: woolin1125   发布时间: 2011-12-13

你的意思是 初始化时将所有项都打开对不?在InitTree()中使用Expand函数就行
CTreeCtrl::Expand

BOOL Expand( HTREEETEM hItem, UINT nColor );

返回值:如果成功则返回非零值;否则返回0。

参数: hItem 要被扩展的tree项的句柄。  
nCode 用来指示要被进行的动作的标志。这个标志可以是下列值之一: 
· TVE_COLLAPSE 收缩列表。  
· TVE_COLLAPSERESET 收缩列表并删除子项。  
· TVE_EXPAND 展开列表。  
· TVE_TOGGLE 如果列表当前是展开的则收缩列表;反之则展开列表。 
 

作者: liujie250079934   发布时间: 2011-12-13

我说的不是展开列表。我说的是可以打对勾的那个checkbox。TreeCtrl控件设置属性的时候有一个checkbox选项,不重绘的话选上这个checkbox选项显示的时候就会有checkbox。现在重绘之后,就显示不出来了。

引用 5 楼 liujie250079934 的回复:
你的意思是 初始化时将所有项都打开对不?在InitTree()中使用Expand函数就行
CTreeCtrl::Expand

BOOL Expand( HTREEETEM hItem, UINT nColor );

返回值:如果成功则返回非零值;否则返回0。

参数: hItem 要被扩展的tree项的句柄。
nCode 用来指示要被进行的动作的标志。这个标志可以是下列值之……

作者: woolin1125   发布时间: 2011-12-13

不好意思。。。我刚发现TreeCtrl还有这个功能。。重绘里没有对这方面进行处理。。

作者: liujie250079934   发布时间: 2011-12-13

其实你可以通过NM_CLICK事件 设置图片模拟出checkbox效果用SetItemBitmap函数

作者: liujie250079934   发布时间: 2011-12-13