Pessoal, estou com o seguinte problema aqui no meu serviço, tenho que fazer
uma função que desabilite a acentuação em todos os forms do sistema. Até ae
tudo OK, estou com a seguinte função para fazer isso.

 

if not (Key in ['A'..'Z', 'a'..'z', '0'..'9']) then 

key := #0;

 

Testei essa função direto no OnKeyPress do form e ela funcionou
perfeitamente, mas para ficar um pouco melhor, tentei colocar essa função
numa Unit aqui que tem somente Procedures e Functions. Então ela ficou assim
:

 

UntFuncoes

 

procedure Desabilita_Acentos ( Key : Char);

begin

if not (Key in ['A'..'Z', 'a'..'z', '0'..'9']) then

                key := #0;

end;

 

UntCentro_Custo

 

No Evento OnKeyPress coloco assim.

 

procedure TfrmCentro_Custo.FormKeyPress(Sender: TObject; var Key: Char);

Begin

Desabilita_Acentos(key);

end;

 

Pelo que sei, era para funcionar... mas não funcionou assim, debuguei a
função e ela retonar false na verificação (Key in ['A'..'Z', 'a'..'z',
'0'..'9']) e a Key que testei foi a “é”. E mesmo dando false na verificação,
ela não le a linha Key := #0;

 

Alguem tem alguma explicação do porque isso ?!?!?

 

Como preciso passar isso logo pra frente, eu coloquei a função “if not (Key
in ['A'..'Z', 'a'..'z', '0'..'9']) then key := #0;” direto no OnKeyPress do
UntCentro_Custo para poder liberar isso hj, mas gostaria de uma explicação
para isso, pois a lógica está correta (Eu acho).

 

Abraços



[As partes desta mensagem que não continham texto foram removidas]

Responder a