Fórum Digitar e validar os valores digitados numa coluna do DBGrid #368228

06/02/2009

0

Olá pessoal.

Aqui neste link segue uma imagem de como o meu programa deve ficar:

http://i415.photobucket.com/albums/pp240/junniorsouzza/imagem.jpg

Eu uso um DBGrid integrado com ClientDataSet e uma das colunas dessa tabela se chama horas (tipo Time). Eu gostaria de saber como fazer para digitar um valor de tempo válido (Exemplo: 8:30) nesse campo e ir somando automaticamente os valores num Edit, conforme voces viram na figura.

Obrigado!!


Junnsouzza

Junnsouzza

Responder

Posts

06/02/2009

.lg.

Você pode fazer a validação antes do campo ser atualizado no seu CDS.

Nos ´Fields´ do seu ClientDataSet. No caso o seu Field de [b:1cb68713ea]Hora[/b:1cb68713ea]. Tem um evento chamado ´[b:1cb68713ea]OnGetText[/b:1cb68713ea]´ (Alguem me corrija se eu eutiver errado). Use-o para fazer a validação necessária.

Agora você pode deixar um formato padrão de [i:1cb68713ea]Hora[/i:1cb68713ea] no seu Field editando a propriedade [b:1cb68713ea]EditMask[/b:1cb68713ea]. Assim ele so poderá colocar um valor referente a hora.

Na propriedade existe exemplo de Hora. E se precisar precione F1 na propriedade no objectInspector que ele lhe descreverá como usar uma mascara neste caso. Acho que os caracteres ´H´,´h´,´M´,´m´ são padrões de Hora e Minuto.

Espero que ajude.
Abraços.


Responder

Gostei + 0

07/02/2009

Junnsouzza

Ok. Vou tentar aqui. Mas como eu faço a validação??
Não sei se voce entendeu bem o que eu quero fazer. Após eu setar os valores das datas final e inicial nos DataTimePicker e após ele exibir conforme está na figura, eu quero que o usuário DIGITE um valor de horas válido no campo horas do DBGrid, e que esses valores sejam somados automaticamente e exibidos no Edit. Por exemplo: Eu digito o valor 8 no primeiro campo, depois 8:30 no segundo e ele soma automaticamente e exibe no Edit. Ou seja, 8 + 8:30 = 16:30. Eu quero tb que ao tentar digitar o valor não seja possível digitar outro valor que não represente um valor de tempo, por exemplo, uma letra ou um caractere especial. Não sei se expliquei bem, mas é basicamente isso.
Se der pra ajudar ^^
Obrigado!!


Responder

Gostei + 0

07/02/2009

Dbergkamps10

Olá,
Conforme já disseram, é melhor fazer a validação no seu CDS, ou no próprio banco antes de gravar. No CDS, vc pode mascarar o campo para o tipo Time, que assim vc restringe a digitação somente para datas válidas.

Espero ter ajudado.

Att
Dalton


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar