Você já deve ter visto em algum lugar aquelas planilhas ou grid´s em programas elegantes com linhas zebradas que ajudam na leitura dos dados e dão um toque de estilo. O efeito zebra nada mais é do que mudar a cor das linhas de forma alternada entre clara e escura.
Para chegar no resultado final esperado nós usaremos uma forma muito simples de fazer isso.
1º – Na definição do programa crie uma variável do tipo logica para temos controle da cor a ser aplicada.
DEFINE VARIABLE lControle AS LOGICAL NO-UNDO INITIAL FALSE.
2º – Na trigger ROW-DISPLAY do browser coloque o seguinte tratamento:
IF lControle = FALSE THEN
ASSIGN
tabela.coluna-1:BGCOLOR IN BROWSE brw-colunas = 8
tabela.coluna-2:BGCOLOR IN BROWSE brw-colunas = 8
tabela.coluna-3:BGCOLOR IN BROWSE brw-colunas = 8
tabela.coluna-4:BGCOLOR IN BROWSE brw-colunas = 8.
ASSIGN lControle = NOT lControle.
Obs:
- No nosso exemplo o “brw-colunas” é o nome do browse
- A cor deve ser aplicada para cada coluna do browse (infelizmente não conheço uma maneira simples de pintar a linha toda)
- O 8 aplicado a cada coluna corresponde a cor cinza na configuração de cores do progress (depois mostro como ver essas cores e cadastrar mais algumas).