TREEVIEW

USUARIO.EXCLUIDOS 25/04/2004 23:51:12
#22624
Tenho um treeview, e nele uso os eventos click e dblclick.

Preciso saber como identificar para ver se há um item selecionado, pq ocorre que pode haver um clique ou clique duplo no espaço vazio do treeview e ele vai disparar o evento e o mesmo só deve rodar se houver um nó selecionado.

Tentei o Treeview1.selecteditem mas se não há item selecionado dá erro.

Alguém tem alguma idéia ?

Abraços,
USUARIO.EXCLUIDOS 26/04/2004 00:51:46
#22638
Resposta escolhida
No evento NodeClick armazene o nó selecionado e no inicio dos eventos click e dblclick teste o valor de uma variavel que indique se um nó foi selecionado ou não !

Dim noAtual As MSComctlLib.Node
Dim noSelecionado as boolean

Private Sub Form_Load()
noAtual = False
End Sub

Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
noAtual = Node.Index - 1 ' Desconsidera primeiro Node (root)
noSelecionado = True
End Sub

Private Sub TreeView1_Click()
If Not noSelecionado Then Exit Sub

' Coloque aqui o seu codigo
' noAutual ontem o node selecionado !
noSelecionado = False
End Sub

Private Sub TreeView1_DblClick()
If Not noSelecionado Then Exit Sub

' Coloque aqui o seu codigo
' noAutual ontem o node selecionado !
noSelecionado = False
End Sub
USUARIO.EXCLUIDOS 26/04/2004 00:55:54
#22640
Estou corrigindo um pequeno erro no objeto noAtual.


Dim noAtual As MSComctlLib.Node
Dim noSelecionado as boolean

Private Sub Form_Load()
noSelecionado = False
End Sub

Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
Set noAtual = Node
noSelecionado = True
End Sub

Private Sub TreeView1_Click()
If Not noSelecionado Then Exit Sub

' Coloque aqui o seu codigo
' noAutual ontem o node selecionado !
noSelecionado = False
End Sub

Private Sub TreeView1_DblClick()
If Not noSelecionado Then Exit Sub

' Coloque aqui o seu codigo
' noAutual ontem o node selecionado !
noSelecionado = False
End Sub
Tópico encerrado , respostas não são mais permitidas