Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 是否可以从树视图中删除一些复选框';s节点?_C++_Winapi - Fatal编程技术网

C++ 是否可以从树视图中删除一些复选框';s节点?

C++ 是否可以从树视图中删除一些复选框';s节点?,c++,winapi,C++,Winapi,我使用资源编辑器在对话框中创建了一个树状视图控件 我已经用SetWindowLongPtr(…)函数设置了复选框样式,就像微软描述的那样 每个节点都有这样的复选框,但我只需要一些节点有复选框,一些节点的文本旁边没有复选框(父节点没有复选框,只有子节点或简单节点->没有子节点的节点) 这可以通过子类化、自定义/所有者绘制或超级分类来实现吗?树控件使用状态图像绘制复选框。根据TVS\u复选框上的文档样式: 状态图像1为未选中框,状态图像2为选中框 盒子。将状态映像设置为零将完全删除该复选框 因此,类

我使用资源编辑器在对话框中创建了一个树状视图控件

我已经用SetWindowLongPtr(…)函数设置了复选框样式,就像微软描述的那样

每个节点都有这样的复选框,但我只需要一些节点有复选框,一些节点的文本旁边没有复选框(父节点没有复选框,只有子节点或简单节点->没有子节点的节点)


这可以通过子类化、自定义/所有者绘制或超级分类来实现吗?

树控件使用状态图像绘制复选框。根据
TVS\u复选框上的文档
样式:

状态图像1为未选中框,状态图像2为选中框 盒子。将状态映像设置为零将完全删除该复选框

因此,类似这样的操作应该允许您从树项目中删除复选框:

TVITEM tvi;
tvi.hItem = hTreeItem;
tvi.mask = TVIF_STATE;
tvi.stateMask = TVIS_STATEIMAGEMASK;
tvi.state = 0;
TreeView_SetItem(hWndTree, &tvi);

请不要在标题中添加标签信息。这里的标签系统非常擅长分类,不需要帮助。:-)请看。谢谢另外,请不要在每篇文章的开头都提前感谢你的帮助。这里不需要。:-)我保证,我再也不会这样做了,我是新来的,我已经用这种方式打了一些问题,希望问题能够完整。对不起,没什么好道歉的;我的评论是想对你有所帮助,这样你将来就会知道了。:-)这就是我所想的,但是如果用户点击节点呢?此时将显示复选框?请尝试并查看!你可以对树进行子分类,如果点击的复选框不应该在那里,你可以将其丢弃。好的,我会试试。我明天会把我的回信寄出去。非常感谢。非常感谢你!!!上帝保佑你!更糟糕的是,我无法克服它:((如此简单,如此有效!我只得到了15个代表点,所以我给了你+1。再次感谢你的帮助。你能帮我解决这个问题吗?这对我来说真的很重要,请:谢谢。