读书人

在TreeCtrl控件中加入了checkbox的风

发布时间: 2012-03-20 14:01:10 作者: rapoo

在TreeCtrl控件中,加入了checkbox的风格。我要怎么取得控件中checkbox的状态?
在TreeCtrl控件中,加入了checkbox的风格。我要怎么取得控件中checkbox的状态?

[解决办法]

C/C++ code
//获取指定节点(及子节点)所有Check状态信息void GetAllCheckData(CTreeCtrl *pTree, BOOL *pOutBuff, HTREEITEM hItem){    pOutBuff[m_Para.CheckPos++] = pTree->GetCheck(hItem);    //遍历子节点    HTREEITEM hSon = pTree->GetNextItem(hItem, TVGN_CHILD);    while(NULL != hSon)    {        GetAllCheckData(pTree, pOutBuff, hSon);        hSon = pTree->GetNextItem(hSon, TVGN_NEXT);    }}
[解决办法]
BOOL CTreeCtrl::GetCheck(HTREEITEM hItem) const;
不过该函数在鼠标点击函数执行结束后,才能得到正确的check状态。
[解决办法]
CTreeCtrl m_list;
HTREEITEM hItem=m_list.GetSelectedItem();//获取当前选中的TreeItem
TreeCtrl是棵树,
用GetRootItem()获取树根,再用下面的接口,反复循环,就可以访问到需要的节点:
GetNextItem(, );//用法上面有
...
还有更多接口,查MSDN吧

读书人网 >VC/MFC

热点推荐