TreeView1有关问题!请帮忙程序改错
TreeView1问题请教高手!在线等!请帮忙程序改错!
我想选中树的父结点然后他对应的子结点都被选中!程序如下:
Private Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node)
Dim strKey As String
Dim i As Long
strKey = Node.Key
If Node.Checked = True Then
For i = 1 To TreeView1.Nodes.Count
If TreeView1.Nodes(i).Parent.Key <> strKey Then
ElseIf TreeView1.Nodes(i).Parent.Key = strKey Then
TreeView1.Nodes(i).Checked = True
End If
Next
Else
For i = 1 To TreeView1.Nodes.Count
If TreeView1.Nodes(i).Parent.Key <> strKey Then
ElseIf TreeView1.Nodes(i).Parent.Key = strKey Then
TreeView1.Nodes(i).Checked = False
End If
Next
End If
End Sub
下面这一句报错:(对象变量或with块变量未设置)
If TreeView1.Nodes(i).Parent.Key <> strKey Then
请问怎么做啊?那位高手有什么高见的请帮忙!谢谢!小弟是分少了点!
------解决方案--------------------
加判断
If Not TreeView1.Nodes(i).Parent Is Nothing Then
If TreeView1.Nodes(i).Parent.Key <> strKey Then
ElseIf TreeView1.Nodes(i).Parent.Key = strKey Then
TreeView1.Nodes(i).Checked = True
End If
endif
*****************************************************************************
欢迎使用****论坛专用阅读器 : **** Reader(附全部源代码)
最新版本:20070130
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
------解决方案--------------------
Private Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node)
Dim strKey As String
Dim i As Long
strKey = Node.Key
For i = 1 To TreeView1.Nodes.Count
If Not TreeView1.Nodes(i).Parent Is Nothing Then
TreeView1.Nodes(i).Checked =iif(TreeView1.Nodes(i).Parent.Key = strKey,Node.Checked,TreeView1.Nodes(i).Checked)
End If
Next
End Sub
------解决方案--------------------
我想选中树的父结点然后他对应的子结点都被选中!程序如下:
Private Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node)
Dim strKey As String
Dim i As Long
strKey = Node.Key
If Node.Checked = True Then
For i = 1 To TreeView1.Nodes.Count
If TreeView1.Nodes(i).Parent.Key <> strKey Then
ElseIf TreeView1.Nodes(i).Parent.Key = strKey Then
TreeView1.Nodes(i).Checked = True
End If
Next
Else
For i = 1 To TreeView1.Nodes.Count
If TreeView1.Nodes(i).Parent.Key <> strKey Then
ElseIf TreeView1.Nodes(i).Parent.Key = strKey Then
TreeView1.Nodes(i).Checked = False
End If
Next
End If
End Sub
下面这一句报错:(对象变量或with块变量未设置)
If TreeView1.Nodes(i).Parent.Key <> strKey Then
请问怎么做啊?那位高手有什么高见的请帮忙!谢谢!小弟是分少了点!
------解决方案--------------------
加判断
If Not TreeView1.Nodes(i).Parent Is Nothing Then
If TreeView1.Nodes(i).Parent.Key <> strKey Then
ElseIf TreeView1.Nodes(i).Parent.Key = strKey Then
TreeView1.Nodes(i).Checked = True
End If
endif
*****************************************************************************
欢迎使用****论坛专用阅读器 : **** Reader(附全部源代码)
最新版本:20070130
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
------解决方案--------------------
Private Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node)
Dim strKey As String
Dim i As Long
strKey = Node.Key
For i = 1 To TreeView1.Nodes.Count
If Not TreeView1.Nodes(i).Parent Is Nothing Then
TreeView1.Nodes(i).Checked =iif(TreeView1.Nodes(i).Parent.Key = strKey,Node.Checked,TreeView1.Nodes(i).Checked)
End If
Next
End Sub
------解决方案--------------------