在TreeView中,仅当父节点的Image
为4而子节点的值为3时,才执行代码吗?
If TreeView2.Nodes(ii).Image = 4 And TreeView2.Nodes(ii).Image = 3 Then.
出于某种原因,If TreeView2.Nodes(ii).Image = 4
检查父母和孩子,我不知道为什么。
我正在尝试使用If TreeView2.Nodes(ii).parent.child.image=3
,但是它不能正常工作。
答案 0 :(得分:0)
TreeView2.Nodes(ii).parent
永远都是虚无。 TreeView中的顶级节点没有父级。使用TreeView2.Nodes(ii).parent.child
时肯定会出现错误。使用parent.child
仅用于获取父节点的第一个孩子,这可能不是您要尝试的。
听起来您想执行以下操作:
Dim objRootNode As Node
Dim objChildNode As Node
Dim iRootCounter As Integer
Dim iChildCounter As Integer
For iRootCounter = 1 To TreeView1.Nodes.Count
Set objRootNode = TreeView1.Nodes(iRootCounter)
If objRootNode.Image = 4 Then
Set objChildNode = objRootNode.Child ' Gets first child
For iChildCounter = 1 To objRootNode.Children
If objChildNode.Image = 3 Then
' Write your code here
End If
Set objChildNode = objChildNode.Next ' Get next node
Next
End If
Next
将您的代码添加到Write your code here
所在的位置。这是父母拥有Image = 4
而孩子拥有Image = 3
的地方。