Função UpperCase para caracteres acentuados

Vamos ver uma função que converte os caracteres acentuados em maíuscula.

Por Programação Pular para comentários
Função UpperCase para caracteres acentuados A fun??o UpperCase do Delphi n?o converte os caracteres acentuados para mai?scula, ent?o em uma busca pela internet encontrei a fun??o que segue abaixo, ela faz esse trabalho e poupa a dor de cabe?a.

Para v?-la em funcionamento, inicie um novo aplicativo e insira os seguintes componentes:

1 Edit
1 Button
1 Label


Antes de come?ar a colocar c?digo nos componentes, vamos inserir a fun??o abaixo dentro do c?digo-fonte do aplicativo. Declare-a logo ap?s as linhas

implementation

{$R *.dfm}


Fun??o para convers?o



function UpperCase2(const S: string): string;
var
  Ch: Char;
  L: Integer;
  Source, Dest: PChar;
begin
  L := Length(S);
  SetLength(Result, L);
  Source := Pointer(S);
  Dest := Pointer(Result);
  while L <> 0 do
  begin
    Ch := Source^;
    if (Ch >= 'a') and (Ch <= 'z') then Dec(Ch, 32);
    if (Ch >= '?') and (Ch <= '?') then Dec(Ch, 32);
    if (Ch >= '?') and (Ch <= '?') then Dec(Ch, 32);
    if (Ch >= '?') and (Ch <= '?') then Dec(Ch, 32);
    if (Ch >= '?') and (Ch <= '?') then Dec(Ch, 32);
    if (Ch >= '?') and (Ch <= '?') then Dec(Ch, 32);
    Dest^ := Ch;
    Inc(Source);
    Inc(Dest);
    Dec(L);
  end;
end;


Ap?s declarar a fun??o respons?vel por converter os caracteres, vamos inserir o c?digo respons?vel por chamar essa fun??o.

No evento OnClick do componente Button, coloque o seguinte c?digo:

label1.Caption:= UpperCase2(edit1.Text);


Entendendo o C?digo



UpperCase2(edit1.text) : UpperCase2 ? a fun??o respons?vel por fazer a convers?o e edit1.text ? o componente que cont?m o texto/caracter a ser convertido.

Para verem essa fun??o em a??o, baixe o arquivo anexado a este artigo.

At? o pr?ximo artigo caros leitores!!!

Ops, j? ia esquecendo, agora voc? pode me encontrar no Twitter, http://www.twitter.com/jlamim, espero voc? l?.

Compartilhe com seus amigos:
Jonathan Lamim
Jonathan Lamim Empreendedor digital, ex-programador (decidi abandonar a carreira após 12 anos), especialista em marketing de conteúdo e agora atuando exclusivamente com Marketing Digital, em projetos de Marketing de Conteúdo, produção de conteúdo para internet, além de escrever ebooks e criar cursos ligados ao marketing digital de um modo geral.
FACEBOOK // TWITTER: @jonathanlamimkt
Quer conversar com o(a) Jonathan, comente:
Carregar comentários
Últimas notícias