como tirar acentos ao digitar em um dbedit

23/08/2004

1

Como faço para não permitir a gravação de palavras com acentos, Ç, e caracteres especiais?
Uso Fireird 1.5 e Delphi 7.


Responder

Posts

23/08/2004

Aroldo Zanela

Colega,

No evento OnKeyPress, siga o exemplo:

  if not (Key in [´A´..´Z´, ´a´..´z´, ´0´..´9´]) then key := 0;


No exemplo acima vai impedir a entrada, mas você pode alterar para conseguir o efeito desejado, conforme abaixo:

  if (Key in [´Á´,´À´,´Ã´]) then key := ´A´;
  if (Key in [´á´,´à´,´ã´]) then key := ´a´;


Só por curiosidade, qual o motivo?


Responder

23/08/2004

Vinicius2k

Colega,

Outra solução seria usar uma função, no OnExit, por exemplo :
function RemoverAcentos(S: String): String;
const StrA = ´áéíóúàèìòùãõâêîôûçüÁÉÍÓÚÀÈÌÒÙÂÊÎÔÛÃÕÇÜ´;
      StrB = ´aeiouaeiouaoaeioucuAEIOUAEIOUAEIOUAOCU´;
var i,aPos: Integer;
begin
  for i:= 1 to Length(S) do
    begin
      aPos:= Pos(S[i],StrA);
      if aPos > 0 then S[i]:= StrB[aPos];
    end;
  Result:= S;
end;


T+


Responder

23/08/2004

Zottis

o motivo é que uso mandar direto para a impressora e não tenho ainda um componente que me permita usar acentos ou caracteres especiais.

Obrigado pela ajuda acho que já resolve o meu problema.

valeu


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira