Problemas com máscaras de entrada
Por favor, alguém sabe como solucionar aquele erro que dá nas máscaras de entrada, quando não se preenche todos os espaços?
Por exemplo:
tenho uma máscara para data ( / / ), fui no campo e errei ao preencher, assim: 04/06/0 . Um erro ocorrerá. Tem como fazer esse erro não ser gerado, pois daí eu poderia dar uma msg ao usuario q ele digitou errado, mas sem o erro.
VLW
Por exemplo:
tenho uma máscara para data ( / / ), fui no campo e errei ao preencher, assim: 04/06/0 . Um erro ocorrerá. Tem como fazer esse erro não ser gerado, pois daí eu poderia dar uma msg ao usuario q ele digitou errado, mas sem o erro.
VLW
Sérgio Gobbo
Curtidas 0
Respostas
Edilcimar
04/06/2005
try
data := datetostr(maskedit1.text);
except
showmessage(´mané isto não é uma data válida´);
maskedit1.setfocus;
end;
data := datetostr(maskedit1.text);
except
showmessage(´mané isto não é uma data válida´);
maskedit1.setfocus;
end;
GOSTEI 0
Marco Salles
04/06/2005
´mané isto não é uma data válida´
andou um pouco afastado e voltou quente....
Mas acho que o amigo [b:8dbb2a535e]junior_gobbo [/b:8dbb2a535e], quer evitar aquele tipo de erro automatico gerado pelo delphi
e o seguinte amigo ... Tente trocar todos os Zeros da sua mascara por nove .. Com exeção ao Ultimo zero que não tem a ver com este problema
Tipo isto
!99/99/0000;1;_ Por isto !99/99/9999;1;_
GOSTEI 0
Sérgio Gobbo
04/06/2005
Ae Marco Salles... deu certo com data, mas e qdo c usa alfanumerico, por exemplo, um RG: 999.999.999-A. Como eu faria para evitar esse erro colocando a mascara do ultimo caracter como alfanumerico?
VLW
VLW
GOSTEI 0
Marco Salles
04/06/2005
Como eu faria para evitar esse erro colocando a mascara do ultimo caracter como alfanumerico?
999.999.999-a;1;_
Voce ja testou colocar a mascara acima na propriedade EditMask do MaskEdit ::: Não funcionou :?: :?: :?:
Importante :
[b:676ff63492]P:s Para ver a diferença da Mascara com o final Um da mascara com o final zero , ate mesmo em nivel de projeto voce ve a diferença[/b:676ff63492]
Coloque a mascara com o final 1 e va no objecto Inspector e veja a propriedade Text Com esta
Agora mude o valor da mascara na propriedade MaskEdit para o Final Zero e volte na propriedade Text a nivel de Projeto e Veja se observa alguma alteração
Na verdade quando se escolhe mascara com final 1 voce esta salvando as literais e leas acompanhama a propriedade text do maskedit
GOSTEI 0
Marco Salles
04/06/2005
Amigo , ao reler este topico , pode ser que eu causei alguma duvida em voce
Qaundo disse na primeira mensagem
Quis me referir a todos os zeros antes do ponto e virgula no final da mascara
Assim:
[b:dbc00fc7a4]O resto da mensagem anterior continua igualmente::::[/b:dbc00fc7a4]
Citação:
Código:
Voce ja testou colocar a mascara acima na propriedade EditMask do MaskEdit ::: Não funcionou :?: :?: :?:
Importante :
[b:dbc00fc7a4]P:s Para ver a diferença da Mascara com o final Um da mascara com o final zero , ate mesmo em nivel de projeto voce ve a diferença [/b:dbc00fc7a4]
Coloque a mascara com o final 1 e va no objecto Inspector e veja a propriedade Text Com esta
Agora mude o valor da mascara na propriedade MaskEdit para o Final Zero e volte na propriedade Text a nivel de Projeto e Veja se observa alguma alteração
Código:
Alguma duvida :?: :?: :?:
Qaundo disse na primeira mensagem
Tente trocar todos os Zeros da sua mascara por nove .. Com exeção ao Ultimo zero que não tem a ver com este problema
Quis me referir a todos os zeros antes do ponto e virgula no final da mascara
Assim:
!99/99/0000;1;_ Por isto !99/99/9999;1;_ ou mesmo isto !99/99/0000;1;_ Por isto !99/99/9999;0;_ **Ultimo zero apos ; não tem nada a ver com o problema
[b:dbc00fc7a4]O resto da mensagem anterior continua igualmente::::[/b:dbc00fc7a4]
Citação:
Como eu faria para evitar esse erro colocando a mascara do ultimo caracter como alfanumerico?
Código:
999.999.999-a;1;_ ou 999.999.999-a;0;_
Voce ja testou colocar a mascara acima na propriedade EditMask do MaskEdit ::: Não funcionou :?: :?: :?:
Importante :
[b:dbc00fc7a4]P:s Para ver a diferença da Mascara com o final Um da mascara com o final zero , ate mesmo em nivel de projeto voce ve a diferença [/b:dbc00fc7a4]
Coloque a mascara com o final 1 e va no objecto Inspector e veja a propriedade Text Com esta
Agora mude o valor da mascara na propriedade MaskEdit para o Final Zero e volte na propriedade Text a nivel de Projeto e Veja se observa alguma alteração
Código:
Na verdade quando se escolhe mascara com final 1 voce esta salvando as literais e leas acompanhama a propriedade text do maskedit
Alguma duvida :?: :?: :?:
GOSTEI 0
Edilcimar
04/06/2005
vá no objeto inspector, selecione o editmask do maskedit e aperte F1, aí o help mostrará todas as máscaras de caracteres possíveis e seus significados ex: 0-numérico obrigatório, 9-numérico não obrigatório, L-alfabético obrigatório, etc
GOSTEI 0
Sérgio Gobbo
04/06/2005
deu certo aki... vlw ae pessoal
Vlw msm
FLLW
Vlw msm
FLLW
GOSTEI 0