DBGRID

CRCJ 02/10/2012 10:04:52
#411012
Ola a todos
Alguem sabe como faço para deixar uma Linha em Branco e Outra Colorida em um DBGrid, uso o Visual Basic 6.0
VELDRAME 02/10/2012 11:52:37
#411026
DBGRID eu não conheço, mas tem o FLEX

[ô]função para zebrar o flexgrid

Function EImpar(ByVal iNum As Long) As Boolean
[ô]Verifica se o número é impar
[ô]Se for impar a função retorna True.
[ô]Se for par a função retorna False.
EImpar = (iNum Mod 2)
End Function

Public Sub ZebraFlex(ByVal flx As MSFlexGridLib.MSFlexGrid, Optional ByVal CorZ As Long = vbInfoBackground)
Dim i As Integer, j As Integer, ImpPar As Integer
With flx
[ô]Pega resto da divisão das linhas fixas por 2,
[ô]isto servirá para iniciar o zebramento a partir da segunda linha após
[ô]a última linha fixa
ImpPar = (.FixedRows Mod 2)
[ô]Não redesenha o grid para agilizar o processo
.Redraw = False
[ô]Loop para ler todas as linhas menos as fixas
For i = .FixedRows To .Rows - 1
[ô]Seleciona a linha
.Row = i
[ô]Loop para ler todas as colunas do grid menos as fixas
For j = .FixedCols To .Cols - 1
[ô]Seleciona a coluna
.Col = j
[ô]Se o resto da divisão do nr da linha por 2 for diferente do ImpPar, então
[ô]pinta com a cor informada, se não pinta com a cor de fundo do grid
If (i Mod 2) <> ImpPar Then .CellBackColor = CorZ _
Else .CellBackColor = .BackColor
Next j
Next i
[ô]Redesenha o grid
.Redraw = True
End With
End Sub

Código do Marcelo Treze
VELDRAME 02/10/2012 11:54:17
#411027
Código do FBUR, também para FLEX

Private Sub Command1_Click()

Dim linha As Integer
Dim coluna As Integer

For linha = 2 To grid.Rows - 1 Step 2

grid.Row = linha

For coluna = 1 To grid.Cols - 1

grid.Col = coluna
grid.CellBackColor = vbRed [ô]altere para a cor desejada.

Next coluna

Next linha

End Sub
Tópico encerrado , respostas não são mais permitidas