
VC中如何选择Tree的CHECKBOX项
设置一个树列表,每一项都带有CHECKBOX,我想在CHECKBOX点击一下鼠标,选择框里面为对号,就表示这一项被选中,我想返回选中的结点,怎么获得?...
设置一个树列表,每一项都带有CHECKBOX,我想在CHECKBOX点击一下鼠标,选择框里面为对号,就表示这一项被选中,我想返回选中的结点,怎么获得?
展开
1个回答
展开全部
CTreeCtrl::GetCheck
追问
试过了,不对啊。而且MSDN里面明明说GetCheck有一个参数,可是我写在程序里就是错的,错误提示说不应该有参数。请问大侠能提供几行源代码吗?
追答
// 遍历TreeCtrl的一个结点
void PraseItem(CTreeCtrl& tree, HTREEITEM hItem)
{
// 取hItem 下的第一个子结点
HTREEITEM hCurItem = tree.GetChildItem(hItem);
while(hCurItem)
{
if (tree.GetCheck(hCurItem))
{
// hCurItem 被选中
}
// 处理当前项的子结点
if (tree.ItemHasChildren(hCurItem))
{
PraseItem(tree, hCurItem);
}
// 当前项的下一个结点
hCurItem = tree.GetNextSiblingItem(hCurItem);
}
}
// 调用时如果是要遍历TreeCtrl的每一项, 就从根结点开始
PraseItem (m_TreeCtrl, m_TreeCtrl.GetRootItem());
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询