MSFLEXGRID COM LINHA DESTACAVEL POR COR

CBTECH 11/07/2005 17:00:32
#93458
Olá pessoal, gostaria de saber se é possível destacar linhas com uma cor diferente pra descatacar uma determinada informação, por exmplo numa lista de clientes o que esteja com débito atrasado apareça com o fundo da linha em vermelho.
Caso alguem saiba, me ajude! Obrigado.
JEAN.JEDSON 11/07/2005 17:12:29
#93461
de uma olhada neste site
USUARIO.EXCLUIDOS 11/07/2005 17:21:56
#93465
EX:

If VencimentoRetorno < Format$(Now, "dd/mm/yy") Then
Grid2.Row = 1
Grid2.Col = 1
Grid2.CellForeColor = vbRed
END IF
é só adaptar a sua necessidade.

Até+
Nilson[S25]
CBTECH 11/07/2005 17:31:19
#93471
Também acho que a sixate seja essa, mas naum funciona! Estou enchendo o Flex com um Data1, será que é por isso? Obrigado!
USUARIO.EXCLUIDOS 12/07/2005 10:57:14
#93597
Tem que ser na Unha via Código mesmo,Pelo menos que eu saiba.
Pois a cada linha preenchida vc indica as cores necessárias.
WEBMASTER 12/07/2005 11:32:50
#93607
Tem sim... eu tenho um código para exatamente isso. Depois eu te mando. é que não está aqui no meu trabalho. Está em casa..
CBTECH 12/07/2005 22:57:41
#93794
Ok Fábio, ficarei aguardando. Obrigado!
LREZANI 13/07/2005 07:28:17
#93812
Resposta escolhida
Tenho um Código que pode ser adaptado;
Sub CordeFundo(NomedoGrid As MSFlexGrid)
Dim L As Integer: Dim C As Integer
With NomedoGrid
.FillStyle = flexFillSingle
'Supondo que a coluna á ser verificada seja a 3

For L = 1 To .Rows - 1
For C = 1 To .Cols - 1
.Col = C: .ColSel = .Col: .Row = L
Select Case C
Case Is = 3
If CDate(.TextMatrix(L, C)) < Date Then
.CellBackColor = vbRed ' Cor de Fundo
'Fica um pouquinho melhor se usar .CellForeColor = vbRed ' Cor da Fonte
Else
.CellForeColor = vbBlue
End If
End Select
Next
Next

.FillStyle = flexFillRepeat
End With
End Sub


Para chamar a rotina: CordeFundo MSFlexgrid1.
Duvida sanada=tópico encerrado.
Espero que seja isto CBTECH.
CBTECH 13/07/2005 11:44:43
#93873
LREZANI, valeu pela dica, deu certo mas eu gostaria de mudar acor da linha inteira e so conseguir mudar a celula, mas valeu pela ajuda, muito obrigado!
USUARIO.EXCLUIDOS 13/07/2005 11:56:06
#93879
Para pintar a linha inteira de um MSFLEXGRID é só vc dar o looping da primeira coluna a ultima do flex...
Ex:


VarLinha = 5
'Se tiver fixed rows a começa a partir do 1
For a = 1 to flex.rows - 1
flex.col = a
For i = 1 to flex.cols
If Cint(Flex.Row) = VarLinha Then
Flex.CellBackColor = VbRed
Else
Flex.CellBackColor = VbGreen
End if
Next i
Next a

Pinta a linha 5 do flex de vermelho e as outras linhas de verde...
Espero que tenha entendido...
Tópico encerrado , respostas não são mais permitidas