我在Private Sub AdministrationTree_NodeCheck(ByVal Node As MSComctlLib.Node)事件里把
AdministrationTree.Nodes(Node.Index).Checked = False
在
Private Sub cmdOK_Click()
For ii = 2 To AdministrationTree.Nodes.count
If AdministrationTree.Nodes(ii).Checked = True Then
txt1.Text = txt1.Text & "," & AdministrationTree.Nodes(ii).Text
End If
Next
假如Node.Index=18
如果上面的Checked值设成False那么遍历TreeView时,AdministrationTree.Nodes(18).Text的值不应该被输出到 txt1.Text里,但实际上它被输出了!
谁能告诉我为什么?怎样解决这问题?
AdministrationTree.Nodes(Node.Index).Checked = False
在
Private Sub cmdOK_Click()
For ii = 2 To AdministrationTree.Nodes.count
If AdministrationTree.Nodes(ii).Checked = True Then
txt1.Text = txt1.Text & "," & AdministrationTree.Nodes(ii).Text
End If
Next
假如Node.Index=18
如果上面的Checked值设成False那么遍历TreeView时,AdministrationTree.Nodes(18).Text的值不应该被输出到 txt1.Text里,但实际上它被输出了!
谁能告诉我为什么?怎样解决这问题?
AdministrationTree.Nodes(Node.Index).Checked = TRUE
它本身就是true啊?
例如:原来check=false,点击check后,会为true,即使你在该事件中设置了false,但过程结束后它仍然为true.
这个事件就是这样,确保事件的引发不会使对象状态改变.
TreeView1.Checkboxes = True