quinta-feira, 17 de julho de 2008

 

Substituindo caracteres acentuados e cedilha com o Delphi

Já havia feito isso a um bom tempo atrás, mas hoje estava precisando fazer novamente o código que substitui caracteres com acento pelo correspondente sem acento no momento que a pessoa digitar a letra.
Porém, estava com preguiça de escrevê-lo novamente então acessei o Google para procurar.
Putz, nada... Será que ninguém mais usa Delphi aqui no Brasil ou o pessoal têm preguiça de postar uma dica na internet, hehe.
Brincadeiras a parte, resolvi publicar aqui no Coelho Na Rede. Então lá vai.
Basta codificar da seguinte forma o evento KeyPress do Edit que não pode ter caracter acentuado ou cedilha:
procedure TfrmCadastroPessoa.dbeNomePessoaKeyPress(Sender: TObject; var Key: Char);
begin
   inherited;
   case Key of
      'Á', 'Â', 'Ã', 'À', 'Ä', 'Å': Key := 'A';
      'á', 'â', 'ã', 'à', 'ä', 'å': Key := 'a';
      'é', 'ê', 'è', 'ë'          : Key := 'e';
      'É', 'Ê', 'È', 'Ë'          : Key := 'E';
      'í', 'î', 'ì', 'ï'          : Key := 'i';
      'Í', 'Î', 'Ì', 'Ï'          : Key := 'I';
      'ó', 'ô', 'õ', 'ò', 'ö'     : Key := 'o';
      'Ó', 'Ô', 'Õ', 'Ò', 'Ö'     : Key := 'O';
      'ú', 'û', 'ù', 'ü'          : Key := 'u';
      'Ú', 'Û', 'Ù', 'Ü'          : Key := 'U';
      'ç'                         : Key := 'c';
      'Ç'                         : Key := 'C';
      'ñ'                         : Key := 'n';
      'Ñ'                         : Key := 'N';
      'ý', 'ÿ'                    : Key := 'y';
      'Ý', 'Ÿ'                    : Key := 'Y';
   end;
end;
No mais é isso, outras dicas interessantes sobre como efetuar essa mudança você pode conferir no seguinte link (Evitar acentuação e cedilha da TiFórum)

Marcadores: , , ,


Comentários:

Postar um comentário

Assinar Postar comentários [Atom]





<< Página inicial

Add to Technorati Favorites Adicionar aos Favoritos BlogBlogs diHITT

Assinar Postagens [Atom]