Máscara para cep
Oi gente..
quem puder me ajudar estou com problema de máscara pra cep
pelo editmask ele está cortando o cep.
Obrigada!!!
quem puder me ajudar estou com problema de máscara pra cep
pelo editmask ele está cortando o cep.
Obrigada!!!
Catharina
Curtidas 0
Respostas
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+
T+
GOSTEI 0
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;
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
24/07/2003
Obrigada!!!
GOSTEI 0