MSFLEXGRID - SELECIONANDO UMA LINHA

RICOCARDOZO 17/08/2007 10:07:35
#231305
Bom Dia pra a Todos
fiz esta funçao para que a medida que vai digitando em uma text vai selecionando no flexgrid até ai tudo bem.
Só que eu queria saber como posso fazer para que apartir do momento que é selecionado no grid ele mude a fonte da linha para bold ou italico .

Private Sub SELECIONAESPECIE()
Dim i As Integer, sProcura As String, sGrid As String
Dim bComp As Byte
Grade.Visible = True
sProcura = UCase(TEXTevento.Text)
bComp = Len(sProcura)

If IsNumeric(TEXTevento.Text) = True Then

For i = 0 To Grade.Rows - 1
sGrid = UCase(Grade.TextMatrix(i, 1))
If sProcura = Left$(sGrid, bComp) Then
Grade.Row = i
Grade.Col = 0
Grade.ColSel = Grade.Cols - 1
Grade.TopRow = Grade.Row
Exit For

End If
Next
End Sub

USUARIO.EXCLUIDOS 17/08/2007 10:27:02
#231311


Acrescente isso no seu For

Grade.CellFontBold = True

boa sorte e sucesso

RICOCARDOZO 17/08/2007 10:36:37
#231318
Já coloquei mais não adiantou??? já fiz um monte de coisa ou ele deixa a grade toda ou não altera a linha especifica que foi selecionada
USUARIO.EXCLUIDOS 17/08/2007 10:44:28
#231321
Cara tenta assim




Private Sub SELECIONAESPECIE()
Dim i As Integer, sProcura As String, sGrid As String
Dim bComp As Byte
Grade.Visible = True
sProcura = UCase(TEXTevento.Text)
bComp = Len(sProcura)

If IsNumeric(TEXTevento.Text) = True Then

For i = 0 To Grade.Rows - 1
sGrid = UCase(Grade.TextMatrix(i, 1))
If sProcura = Left$(sGrid, bComp) Then
Grade.Row = i
Grade.Col = 0
Grade.ColSel = Grade.Cols - 1
Grade.TopRow = Grade.Row
Grade.CellFontBold = True <<<<<<<<<<<<<<<<<<<<<< coloca nesse ponto..
Exit For

End If
Next
End Sub


outra coisa..se eu copiar esse código num flex aki..vai funcionar ou falta pedaço?
RICOCARDOZO 17/08/2007 10:53:53
#231325
Fiz assim mais naum deu certo
Será que pode ser alguma configuração no flexgrid?
O código completo é este:

Private Sub SELECIONAESPECIE()
Dim i As Integer, sProcura As String, sGrid As String
Dim bComp As Byte
grade.Visible = True
sProcura = UCase(TEXTevento.Text)
bComp = Len(sProcura)

If IsNumeric(TEXTevento.Text) = True Then

For i = 0 To grade.Rows - 1
sGrid = UCase(grade.TextMatrix(i, 1))
If sProcura = Left$(sGrid, bComp) Then
grade.Row = i
grade.Col = 0
grade.ColSel = grade.Cols - 1
grade.TopRow = grade.Row
grade.CellFontBold = True
Exit For

End If

Next

Else
For i = 0 To grade.Rows - 1
sGrid = UCase(grade.TextMatrix(i, 2))
If sProcura = Left$(sGrid, bComp) Then
grade.Row = i
grade.Col = 0
grade.ColSel = grade.Cols - 1
On Error Resume Next
grade.TopRow = grade.Row
Exit For
End If
Next
End If

End Sub


USUARIO.EXCLUIDOS 17/08/2007 10:55:40
#231326


adaptei essa parte aki...muda o FlexBD por Grade

FlexBD.ColSel = FlexBD.Cols - 1
FlexBD.TopRow = FlexBD.Row

For x = 0 To FlexBD.Cols - 1
FlexBD.Row = i
FlexBD.Col = x
FlexBD.CellFontBold = True
Next x

Exit For

End If

vai deixar a linha toda em negrito
RICOCARDOZO 17/08/2007 11:19:37
#231341
Cara deu certo..
O unico problema agora é que eu vou ter que descobrir uma maneira dele não usar seu for para selecionar mais de uma linha tipo por exemplo.
Eu tenho cadastrado do 1 ao 15 , quando eu digito 1 ele seleciona o 1 e eu digito o 5 ele seleciona o 15 mais mantem a seleção no 1 tambem..

Mais valeu cara
Muito obrigado

USUARIO.EXCLUIDOS 17/08/2007 11:24:00
#231345

Simples pra dedel...só terá q mudar a idéia

Coloque esse código no evento KeyPress do Text q vc digita o código..

If KeyAscii = 13

o nosso código

End If

O que vai acontecer: qdo apertar o enter no text mesmo..aí ele faz a pesquisa e colcao negrito ou n...entendeu?

manda ve
Tópico encerrado , respostas não são mais permitidas