vb中树状图带有复选框,我想实现点击一个节点,其他节点的复选框被选中的对勾取消,

 我来答
爱栀竹的人
2011-12-05 · TA获得超过1352个赞
知道大有可为答主
回答量:1743
采纳率:0%
帮助的人:1030万
展开全部
实现单选功能吗?

'返回选定的Key值
Sub sub_CheckOne(ByVal Node As MSComctlLib.Node)

If Node.Checked = True Then

Dim iA
For iA = 1 To Obj_TreeView.Nodes.Count
If Obj_TreeView.Nodes(iA).Checked Then
If Obj_TreeView.Nodes(iA).Key <>node.key Then
Obj_TreeView.Nodes(iA).Checked = False
end if
End If
Next

End If
end sub
更多追问追答
追问
但是我有1、2、3级目录,想点击1节目录时,2、3级都被选中,点击2级时,1级不选中,但是3级被全选中,点3级的某一个节点,只有该节点复选框被选中,
追答
Sub sub_CheckMe(ByVal Node As MSComctlLib.Node)

If Not Node.Checked = True Then Exit Sub

Dim iA
For iA = 1 To Obj_TreeView.Nodes.Count

If fun_Isson(Obj_TreeView, Obj_TreeView.Nodes(iA), Node.Key) Then
oNode.Checked = True
Else
If Obj_TreeView.Nodes(iA).Checked Then
If Obj_TreeView.Nodes(iA).Key Node.Key Then
Obj_TreeView.Nodes(iA).Checked = False
End If
End If
End If
Next

End Sub
'*********************************************************************************************
'名称 fun_Isson
'作者   Morn Woo 2005-3-16
'功能 检查节点oNode是否键值为skey节点的子节点
'参数 tr 树对象,onode 待检查的节点对象,skey 父节点的键值
'*********************************************************************************************
Function fun_Isson(ByVal tr As TreeView, ByVal oNode As Node, sKey As String) As Boolean
fun_Isson = False
While (oNode.Index 0) And (oNode.Key sKey)
Set oNode = oNode.Parent
Wend
If oNode.Key = sKey Then
fun_Isson = True
End If
End Function
来自:求助得到的回答
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zx001z7d53
2011-12-05 · TA获得超过2万个赞
知道大有可为答主
回答量:2.4万
采纳率:52%
帮助的人:6049万
展开全部
删除回复代码
有眼不识金镶玉
追问
你别这么生气吗,我没有那个意思,你的代码我也试了,是可以的,因为我不知道我接下来一个个的问题,会不会让你没有耐心的回答,干嘛这么生气,这么大的脾气呀,莫生气呀~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式