Fórum Tratando o evento EDBEditError #371359
18/06/2009
0
Estou com um problema com uma mascara. Quando o usuário sai do
component [b:36433fe74f]MakEdit[/b:36433fe74f] sem preencher a mascara por completo,
o delphi lança uma exceção EDBEditError.
Por exemplo, há um MaskEdit para data (__/__/____), e o usuário preenche
o campo apenas do seguite formato: (01/01/200_). Quando o usuário sair
do componente ([b:36433fe74f]OnExi[/b:36433fe74f]t) a exceção é lançada.
Imagino que ficaria algo semelhante ao código abaixo:
try //código except on EDBEditErro do showMessage(´Mensagem´); exit
Desde já obrigado!
Fabricio.ribeiro
Curtir tópico
+ 0Posts
18/06/2009
Catunda
não gosto de utilizar maskedit, prefiro utilizar um campo temporário do tipo Date mesmo. Acho mais facil de controlar atraves do evento OnSetText do campo.
Costumo configurar o DisplayFormat com dd/mm/yyyy
e o EditMask com #//;1;
procedure Form1.MyDataSetVctoSetText(Sender: TField;
const Text: String);
begin
try
if Trim(Text)=´/ /´ then Sender.Clear
else
Sender.AsString:=Text;
except
on e:econverterror do
begin
showmessage(´A Dada Digitada : ´+Text+´ Não Corresponde a Uma Data Válida´);
abort;
end;
end;
end;
Obs: No caso acima, se for informado em branco o campo pega o valor nulo. Se deixar o ano incompleto ele completa sozinho, e se a data não for válida ele não deixa passar.
Gostei + 0
19/06/2009
Fabricio.ribeiro
Gostei + 0
23/06/2009
Fabricio.ribeiro
temporário´ do tipo Date no meu formulário?
Tentei o TEdit mas ele não possui as propriedades que você mensiou...
Abraços!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)