Formatar telefone no Delphi
Esta função formata o telefone digitado em diversos formatos, a partir da quantidade de dígitos do valor passado como parâmetro. Use na função onexit do seu TEdit
function FormataTelefone(sTelefone: String): String;
//Formata o numero do telefone passado como parametro de acordo
var
s: string;
tam: Integer;
begin
s := Trim(ApenasNumerosNaString(sTelefone));
tam:= Length(s);
case tam of
8: //Ex: 37212121
begin
Result:= Copy(s,1,4)+'-'+Copy(s,5,4);
end;
10: //Ex: 3237212121 = (32)3721-2121
begin
Result:= '('+Copy(s,1,2)+')'+Copy(s,3,4)+'-'+Copy(s,7,4);
end;
11: //Ex: 13237212121 = +1(32)3721-2121
begin
Result:= '+'+Copy(s,1,1)+'('+Copy(s,2,2)+')'+Copy(s,4,4)+'-'+Copy(s,8,4);
end;
12: //Ex: 553237212121 = +55(32)3721-2121
begin
Result:= '+'+Copy(s,1,2)+'('+Copy(s,3,2)+')'+Copy(s,5,4)+'-'+Copy(s,9,4);
end;
else
Result:= s;
end;
end;
function FormataTelefone(sTelefone: String): String;
//Formata o numero do telefone passado como parametro de acordo
//com o tamanho da string
// Nilcemar Ferreira - Out/2011var
s: string;
tam: Integer;
begin
s := Trim(ApenasNumerosNaString(sTelefone));
tam:= Length(s);
case tam of
8: //Ex: 37212121
begin
Result:= Copy(s,1,4)+'-'+Copy(s,5,4);
end;
10: //Ex: 3237212121 = (32)3721-2121
begin
Result:= '('+Copy(s,1,2)+')'+Copy(s,3,4)+'-'+Copy(s,7,4);
end;
11: //Ex: 13237212121 = +1(32)3721-2121
begin
Result:= '+'+Copy(s,1,1)+'('+Copy(s,2,2)+')'+Copy(s,4,4)+'-'+Copy(s,8,4);
end;
12: //Ex: 553237212121 = +55(32)3721-2121
begin
Result:= '+'+Copy(s,1,2)+'('+Copy(s,3,2)+')'+Copy(s,5,4)+'-'+Copy(s,9,4);
end;
else
Result:= s;
end;
end;
Comentários
Postar um comentário