Tratar exceção do MaskEdit, tem como?

Delphi

27/11/2018

Ola, tenho um maskedit num form, com a seguinte mascara:
>AAA<-0000;1; (que é para placa de veículo, ex: "ABC-1234")
.
Problema:
Quando o usuário digita "A - " (deixando parte do texto com espaços em branco)
e sai do maskedit, o Delphi chama uma exceção "invalid input value. Use escape to abandon changes"
.
Essa exceção é executada antes do OnExit, então não consigo alterar
o contéudo para "vazio" por exemplo, para contornar essa exceção.
.
Alguém tem alguma ideia de como contornar isso?
.
Na verdade eu gostaria que a verificação do maskedit continuasse,
porem, quando fosse conteudo inválido, eu gostaria de avisar o
usuario, e em seguida retornar com setfocus no maskedit
para digitar novamente, sem a necessidade de teclar ESC,
(porque se não teclar ESC a exceção se repete continuamente).
Alberto

Alberto

Curtidas 0

Respostas

Welson Junior

Welson Junior

27/11/2018

você pode mudar a máscara, pelo que me parece o '0' é campo obrigatório mas se você mudar para >AAA<-9999;1; ele vai deixar colocar o valor em branco, ao no OnExit vc pode fazer sua validação.
GOSTEI 0
Alberto

Alberto

27/11/2018

Deu certo, obrigado.
GOSTEI 0
POSTAR