1、点击属性控件,添加消息处理函数
ON_NOTIFY(NM_CLICK, IDC_TREE1, &CKingSchedulView::OnNMClickTreeParenNodetJoinsChildNode)
2、消息处理函数实现代码
void CKingSchedulView::OnNMClickTreeParenNodetJoinsChildNode(NMHDR *pNMHDR, LRESULT *pResult)
{
// TODO: Add your control notification handler code here
CPoint point;
UINT uFlag;
HTREEITEM hTree;
BOOL bCheck;
GetCursorPos(&point);
m_TreeCtrol.ScreenToClient(&point);
hTree = m_TreeCtrol.HitTest(point, &uFlag);
if(hTree && (TVHT_ONITEMSTATEICON & uFlag))
{
bCheck = m_TreeCtrol.GetCheck(hTree);
SetChildCheck(hTree, !bCheck);
}
*pResult = 0;
}
void CKingSchedulView::SetChildCheck( HTREEITEM hRoot, BOOL bCheck )
{
hRoot = m_TreeCtrol.GetChildItem(hRoot); //获取子项句柄
while (NULL != hRoot)
{
m_TreeCtrol.SetCheck(hRoot, bCheck);
SetChildCheck(hRoot,bCheck); //递归调用
hRoot = m_TreeCtrol.GetNextSiblingItem(hRoot); //获取兄弟的句柄
}
}