Máscara para cep

Delphi

24/07/2003

Oi gente..

quem puder me ajudar estou com problema de máscara pra cep
pelo editmask ele está cortando o cep.

Obrigada!!!


Catharina

Catharina

Curtidas 0

Respostas

Siro

Siro

24/07/2003

Primeiramente vefifique o tamanho de seu campo >=´9´, se for Tente assim ´99999-999;1;_´. se for menor não podera armazenar a string ´-´.


T+


GOSTEI 0
Anicetojunior

Anicetojunior

24/07/2003

ola amiga, vai ai uma rotina para ver se o cep e valido ou nao . coloque essa rotina o evento onexite do seu maskedit,dbedit etc..
e so copiar e colar , sendo que nesse exemplo eu ultilizei um dbedit, aonde esta ´dbedit19´ mude para o nome que vc esta ultilizando no seu dbedit , maskedit etc. Quando o cep e valido ele nao mostra nenhuma mensagem , mas quando ele e invalido o delphi mostrarar uma mensagem

lembre-se coloque isso no evento onexit

var
n:array [1..11] of integer;
dgt1, dgt2: integer;
soma1, soma2: integer;
begin
begin
if copy(dbedit19.Text,1,1) <> ´ ´ then
begin
n[1]:=strtoint(copy(dbedit19.Text,1,1));
n[2]:=strtoint(copy(dbedit19.Text,2,1));
n[3]:=strtoint(copy(dbedit19.Text,3,1));
n[4]:=strtoint(copy(dbedit19.Text,5,1));
n[5]:=strtoint(copy(dbedit19.Text,6,1));
n[6]:=strtoint(copy(dbedit19.Text,7,1));
n[7]:=strtoint(copy(dbedit19.Text,9,1));
n[8]:=strtoint(copy(dbedit19.Text,10,1));
n[9]:=strtoint(copy(dbedit19.Text,11,1));
n[10]:=strtoint(copy(dbedit19.Text,13,1));
n[11]:=strtoint(copy(dbedit19.Text,14,1));
soma1:=(n[1]*10) + (n[2]*9) + (n[3]*8) + (n[4]*7) + (n[5]*6) + (n[6]*5) +
(n[7]*4) + (n[8]*3) + (n[9]*2);

dgt1:= 11 -(soma1 mod 11);

if (dgt1 = 10) or (dgt1 = 11) then
dgt1:=0;

soma2:=(n[1]*11) + (n[2]*10) + (n[3]*9) + (n[4]*8) + (n[5]*7) + (n[6]*6) +
(n[7]*5) + (n[8]*4) + (n[9]*3) + (dgt1*2);

dgt2:= 11-(soma2 mod 11);

if(dgt2 = 10) or (dgt2 = 11) then
dgt2:=0;

if (dgt1<>n[10]) or (dgt2<>n[11]) then
begin
showmessage(´Numero do CPF inválido. ´);
dbedit19.SetFocus;
abort;
end;
end;
end;


GOSTEI 0
Catharina

Catharina

24/07/2003

Obrigada!!!


GOSTEI 0
POSTAR