GARANTIR DESCONTO

Fórum Mask Edt para CPF #171844

28/07/2003

0

Como eu crio uma mask edit para cpf?


Sergio Luiz

Sergio Luiz

Responder

Posts

28/07/2003

Anicetojunior

ola amigo ,
para criar um mask edit para cpf faza o seguinte :

coloque no seu form um componente maskedit (paleta additional) e na sua propriedade editmask digite: 999.999.999-99;1;_ e na sua propriedade text delete o seu conteudo .

para verificar se o cpf e valido ou nao faza o seguinte :
no evento onexit do maskedit digite:


var
n:array [1..11] of integer;
dgt1, dgt2: integer;
soma1, soma2: integer;
begin

if dbcombobox2.Text= ´F´ then
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;

sendo que nesse exempo eu utilizei um dbedit19 ja no seu caso aonde houver o ´dbedit19´ digite o nome do seu edit.

espero ter te ajudato

falowwwwwwww


Responder

Gostei + 0

28/07/2003

E_gama

Criei um componente para isso (e mais algumas outras utilidades).

Delphi 7: [url]http://www.salesiano.com.br/egama/TXEdit_D7.zip[/url]
Delphi 5: [url]http://www.salesiano.com.br/egama/TXEdit.zip[/url]


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar