PROBLEMAS DE SELECAO COM O BOTAO DIREITO DO MOUSE
Galera ontem eu pdi um codigo para faze a seleção de um flex grid com o botao direito , uma pessoa me passou esse codigo, o problema eh q esse codigo somente faz a seleção das 10 primeiras linhas, se eu tiver mais que isso ela não seleciona, alguem sabe como fazer para essa selecao ir direito?
Fala Rocker..
Foi o Marcelo que passou o código. Isso é pq na verdade ele pega pela posição de altura do flex.
vou fazer testes aki com o código pra tentar resolver...
qtas linhas mais ou menos seu flex mostra?
Na verdade não é que esse código só faz a seleção das 10 primeiras linhas, mas sim que ele faz o tratamento ds linhas visÃÂÂveis ou não, ai realmente deve conter um erro se a linha estiver para baixo da barra de rolagem.
Para evitar este erro, vc tem que considerar apenas as linhas visÃÂÂveis...
Tente com o exemplo abaixo:
Para evitar este erro, vc tem que considerar apenas as linhas visÃÂÂveis...
Tente com o exemplo abaixo:
Private Sub MSFlexGrid1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
If Button <> 2 Then Exit Sub
Dim SomaAlturaLinhas As Long
For i = 0 To MSFlexGrid1.Rows - 1
If MSFlexGrid1.RowIsVisible(i) Then
SomaAlturaLinhas = SomaAlturaLinhas + MSFlexGrid1.RowHeight(i)
End If
If SomaAlturaLinhas > y Then
MsgBox "Linha " & i
Exit For
End If
Next
End Sub
Então Sinkertec, com o código acima, vai funcionar independente do número de Linhas!!
vlw galera obrigado pela colaboração
Chegou onde eu queria..era exatamente isso q eu tava vendo aki...
então blz...ta resorvido
abraços pros dois!
ah e meu flex mostra n linhas e colunas depende da vontade do usuário
Então diogo, esse código deve resolver seu problema independente do número de linhas ou de colunas...
Faz um teste ae...
Faz um teste ae...
Tópico encerrado , respostas não são mais permitidas