Formulário modo folha de dados "zebrado" e campos totais
Já demonstrei em outra dica, como "zebrar" um formulário no modo continuo. Agora é a vez do modo folha de dados. Por padrão, ele já se apresenta "zebrado", com faixas branca e cinza bem suave. Esta configuração pode ser modificada; veja como:
Carregue o formulário, a seguir clique no botão Alternar cor do fundo, conforme figura abaixo e escolha a cor ao seu gosto.

Observe neste exemplo como ficou o formulário após a troca de cor:

Veja também a nova aparência do fundo , toda gradeada, assemelhando-se à planilha do Excel. Particularmente gostei muito deste designer, mas se você quiser alterá-lo, basta clicar no botão Linhas de grade (1) e escolher uma das opções. Pode ainda trocar a cor do fundo através do botão Cor do fundo (2).

Observe como ficou o formulário após sua alteração:

Outra novidade, e muito bem-vinda, é que agora podemos inserir, direto na folha de dados, campos Totais, sem programação.
Carregue o formulário e clique no botão Totais (1). Abra a Caixa de listagem (2), correspondente a coluna que você deseja totalizar e selecione a opção desejada, conforme você está vendo na figura abaixo.

Como resultado, temos:

Aproveitando o exemplo, será demonstrado como inserir a Formatação Condicional. Abra o formulário no modo estrutura e selecione o campo (1) a ser inserido a formatação. Clique no botão Condicional(2) da faixa. Será aberto o formulário da formatação (3). Veja que no formulário da formatação foi configurado para que a fonte fique em vermelho, quando o valor do campo for superior a Um mil Reais.

Como resultado temos:

Agora vou demonstrar uma maneira de como você pode mudar, em tempo de execução, não só o "zebrado", mas também a fonte e o tamanho da fonte.
Este exemplo foi projetado para a alteração ocorrer quando for pressionada a combinação de teclas CRTL + y.
Para isso usei no evento "Ao apertar tecla" , das propriedades do formulário, o seguinte código:
Option Compare Database
Dim posição As Byte
_______________________________________________________________________
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If Shift = 2 Then '2 se você pressionou a tecla CTRL
If KeyCode = 89 Then '89 se pressionou a tecla y minúsculo
Select Case Nz(posi?o)
Case 0
Me.DatasheetAlternateBackColor = RGB(244, 244, 244)
Me.DatasheetFontHeight = 8
Me.DatasheetFontName = "verdana"
posição = 1
Case 1
Me.DatasheetAlternateBackColor = RGB(204, 255, 204)
Me.DatasheetFontHeight = 10
Me.DatasheetFontName = "Arial"
posição = 2
Case 2
Me.DatasheetAlternateBackColor = RGB(204, 236, 255)
Me.DatasheetFontHeight = 9
Me.DatasheetFontName = "Tahoma"
posição = 0
End Select
End If
End If
End Sub
Passe a propriedade Visualizar teclas do formulário para SIM
A figura abaixo mostra um teste com o CRTL + y , para você visualizar as modificações feitas em tempo de execução. Observe a troca de cor, do nome da fonte e do tamanho da fonte.

Observe na figura acima, na faixa azul, do preço em vermelho, uma sobreposição do fundo branco do controle. É que na formatação condicional não tem a opção de fundo transparente. O padrão é branco.
Baixe o arquivo exemplo para você estudar e testar o efeito do código apresentando, utilizando a combinação CRTL + y
|
4 comentário(s) Alexandre Costa 18/11/2009 08:48:27 Muito bom as suas dicas, me quebrou um galho, no meu trabalho. Valeu!!!! Avelino Sampaio 30/11/2009 17:57:52 Fico feliz em poder ajudar Sucesso Elaine Alcantara 4/12/2009 13:24:50 Olá, tenho uma dúvida com relação a expressões. Tem alguma maneira de mostrar uma letra (A,B ou C) dependendo do total de pontos de um questionario:: Me ajude por favor, estou quebrando a cabeça... Obrigada, Elaine eralcantara@gmail.com Geraldo Marques 7/6/2010 17:02:07 Caríssimo, ótimos exemplos. Pergunta: É possível programar uma Key (exemplo: F8) para adicionar um novo registro ? Geraldo. (24-33446176) |