我的CTreeCtrl设置了带有CheckBox
我想在一个父节点上打勾,然后让他的所有孩子节点都被打勾在父节点点上取消打勾,所有的孩子节点都被取消打勾
如何做到,我现在就是不知道怎么响应‘打勾’这个事件
我想在一个父节点上打勾,然后让他的所有孩子节点都被打勾在父节点点上取消打勾,所有的孩子节点都被取消打勾
如何做到,我现在就是不知道怎么响应‘打勾’这个事件
解决方案 »
- vs2005的MFC程序如何获取Picture控件的HDC
- 关于API HOOK实现Word透明加解密的问题
- 求助!如何自动更新数据库里数据类型为datetime数据的日期部分
- “扫雷”小游戏的链接问题?
- SQL server中,能不能在客户端上写一个存储过程,然后存入服务器数据库中,供以后使用?
- 如何实现在MSFlexGrid控件中添加数据时实现动态增加行数,而且滚动条自动定位到最后添加的那一行(高分送!!!)
- 求mp3风格的图像显示程序。
- 如何确定车速?
- 定义了类的两个对象,结果发现都指向了同一个地址,请问怎样才能让其指向不同的地址?
- 请教各位类型安全是什么意思?
- 怎样在一个while循环里面等消息阿?在线等,好了就给分
- 菜单式窗口
我的意思是,鼠标点到父节点的CheckBox上,这个事件是什么
不是NM_CLICK
{
UpdateData( TRUE );
if ( !m_bCheckAuto ) return FALSE;
UINT pflags;
CTreeCtrl * pTreeCtrl = ( CTreeCtrl* )GetDlgItem( IDC_TREE_FILTER );
if( pMsg->message == WM_LBUTTONDOWN && pMsg->hwnd == ( (CWnd*)pTreeCtrl)->m_hWnd )
{
CPoint point;
point = pMsg->pt;
CString temp;
pTreeCtrl->ScreenToClient( &point );
HTREEITEM hitItem = pTreeCtrl->HitTest( point, &pflags );
if ( pflags & (TVHT_ONITEMSTATEICON ))
{
if ( hitItem )
{
if ( pTreeCtrl->GetCheck( hitItem ) )
{
HTREEITEM x = pTreeCtrl->GetChildItem(hitItem);
do
{
m_treeFilter.SetCheck( x, FALSE );
}
while( ( x = pTreeCtrl->GetNextSiblingItem( x ) )!= NULL );
}
else
{
HTREEITEM x = pTreeCtrl->GetChildItem(hitItem);
do
{
m_treeFilter.SetCheck( x, TRUE );
}
while( ( x = pTreeCtrl->GetNextSiblingItem( x ) )!= NULL );
}
return FALSE;
}
}
}
return CDialog::PreTranslateMessage(pMsg);
}