GARANTIR DESCONTO

Fórum Delphi Validar Campo Integer #603006

14/06/2019

0

Olá.
Tenho o seguinte problema:
Tenho um campo numérico cujo usuário digita através de um DBEDIT
quando o usuário digita um numero maior que 2,147,483,647
que é o limite do "data type integer" da um erro:
valor tal "is not a valid integer value for field" tal
.
Acontece que essa exceção ocorre antes do DBEDIT.OnExit
e não to conseguindo tratar a exceção antes de acontecer.
Não quero que aconteça esse erro, quero avisar o usuário,
para corrigir o numero e continuar a aplicação normalmente.
Alberto

Alberto

Responder

Posts

21/06/2019

Gabriel Arcasa

Olá.
Tenho o seguinte problema:
Tenho um campo numérico cujo usuário digita através de um DBEDIT
quando o usuário digita um numero maior que 2,147,483,647
que é o limite do "data type integer" da um erro:
valor tal "is not a valid integer value for field" tal
.
Acontece que essa exceção ocorre antes do DBEDIT.OnExit
e não to conseguindo tratar a exceção antes de acontecer.
Não quero que aconteça esse erro, quero avisar o usuário,
para corrigir o numero e continuar a aplicação normalmente.


Não seria no evento OnChange ? apenas verifique se oque está sendo digitado é maior que o valor que maximo
const
 MAX_VALUE = 2.147.483.647

If Value > MAX_VALUE  then
 Value := 0;
Responder

Gostei + 0

21/06/2019

Alberto

No onChange não dá certo,
Pois ao entrar no form o dbEdit é preenchido com o valor do campo
e dispara o evento em momento inoportuno, bem como no
scroll do dbgrid.
Responder

Gostei + 0

22/06/2019

Bruno

No onChange não dá certo,
Pois ao entrar no form o dbEdit é preenchido com o valor do campo
e dispara o evento em momento inoportuno, bem como no
scroll do dbgrid.



Coloque no evento setText do Field vinculado a ele
Responder

Gostei + 0

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

Aceitar