LINHA SELECIONADA MSHFLEXGRID

 Tópico anterior Próximo tópico Novo tópico

LINHA SELECIONADA MSHFLEXGRID

VB / VBA

 Compartilhe  Compartilhe  Compartilhe
#322977 - 15/09/2009 18:15:40

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Pessoal,

Eu já ví isso aquí no FORUM, mas não estou conseguindo me recordar como o tópico foi feito.
Se eu não me engano, até eu mesmo já devo ter perguntado isso aquí uma vez, mas não estou conseguindo localizar a resposta, por isso pesso novamente a ajuda.

Como é que eu faço para saber se eu tenho uma linha selecionada no meu MSHFLEXGRID?
Ele já está com a propriedade SelectionMode = 1 - flexSelectionByRow

Agora preciso saber se ela está realmente selecionada, ou apenas com o FOCO sobre a linha. Me ajudem, PLEASE!???

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

#322981 - 15/09/2009 19:20:09

DANIKULL
PIRASSUNUNGA
Cadast. em:Julho/2004


LCSD, boa noite.

Se eu entendi sua dúvida faça assim:


SeuGrid.Row
'Coloque um msgbox para verificar, ok??
MsgBox SeuGrid.Row


vai mostar que linha esta selecionada.

...................
[signx]"quando você se deparar com um problema, não diga para Deus o quão grande ele é, mas diga para o seu problema o quão grande seu Deus é..."
[txt-size=5]autor desconhecido[

Resposta escolhida #322996 - 15/09/2009 23:05:21

FGSANTOS
BELO HORIZONTE
Cadast. em:Março/2004


Pode testar tambem se tem linhas no gride:

if grid.rows > 1 then 'sendo a linha 1 o cabecalho do gride (nome das colunas)
    'para pegar o conteudo de uma celula
    grid.textmatrix(grid.row,3) 'pega a coluna 3, lembrando que é array base 0
endif

Só falei estas coisas pois serve para relembrar...

Flavio Santos

#323000 - 16/09/2009 08:05:47

ROBIU
CANDEIAS
Cadast. em:Julho/2004


Veja esses códigos:
Para pegar o valor da linha e colocar no textbox,
Private Sub HGrid_Click()
    Txt1.Text = HGrid.TextMatrix(HGrid.Row, 0) 'Coluna Codigo
    Txt2.Text = HGrid.TextMatrix(HGrid.Row, 1)'Coluna Nome
End Sub

Para pintar a linha de Azul quando celecionada e deixar normal quando perder o foco:

Private Sub HGrid_EnterCell()
    HGrid_Click
    Dim A As Integer
    For A = 0 To HGrid.Cols - 1
        HGrid.Col = A
        HGrid.Row = HGrid.Row
        HGrid.CellBackColor = &H8000000D      'Linha na cor Azul
        HGrid.CellForeColor = &H80000005          'Letras Branca
    Next A
        HGrid.Col = 0
End Sub

Private Sub HGrid_LeaveCell()
    Dim A As Integer
    For A = 0 To HGrid.Cols - 1
        HGrid.Col = A
        HGrid.Row = HGrid.Row
        HGrid.CellBackColor = &H80000014     'Linha na cor branca
        HGrid.CellForeColor = &H0&          'Letras Preto
    Next A

End Sub


Roberto Martins

#323013 - 16/09/2009 10:25:34

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Pessoal, muito obrigado.

Conseguí com a ajuda de todos fazer o que estava precisando......

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por LCSD em 16/09/2009 10:25:46