我有一个 MFC CTreeCtrl 卡在一个打开了 TVS_CHECKBOXES 样式的对话框中。我的所有树项目旁边都有复选框。在 OnInitDialog 中,我使用 CTreeCtrl::SetCheck 设置了一些项目的选中状态,但在显示树时没有选中树中的任何项目。 SetCheck 正在返回 TRUE。用鼠标检查项目工作正常。有人遇到过这个吗?
最佳答案
找出问题所在。我在 visual studio 资源编辑器中设置了 TVS_CHECKBOXES 样式。显然这导致了我在初始检查时遇到的问题。相反,你必须做
m_nodeTree.ModifyStyle (TVS_CHECKBOXES, 0);
m_nodeTree.ModifyStyle (0, TVS_CHECKBOXES);
在 OnInitDialog 中填充树之前。完成此操作后,一切正常。
关于c++ - 为什么我的 CTreeCtrl 复选框没有选中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1289519/