Fórum Problema com verificação na digitação #349563

24/11/2007

0

E ai galera bem e o seguinte , eu to tetando fazer uma função que depois que o cara deixa um edit ele verifica o que foi digitado, e aceita somente os valores numericos,X,W,G,R,U, B. so que não to conseguindo, ou ele aceita tudo ou não aceita nada o codigo que usando e esse aqui :


custo_real:=Edit1.Text;
if (custo_real<>´´) then
Begin
for t:=0 to Length(custo_real) do
begin
if (not(((custo_real[t]>=´0´) and (custo_real[t]<=´9´)) or (UpperCase(custo_real[t])=´X´) or (UpperCase(custo_real[t])=´U´) or (UpperCase(custo_real[t])=´G´) or (UpperCase(custo_real[t])=´B´) or (UpperCase(custo_real[t])=´W´) or (UpperCase(custo_real[t])=´R´))) then
begin
ShowMessage(´Por favor utilize valores numericos ou que se encontrem dentro da Legenda de Custo´);
Edit1.SetFocus;
Break;
end;

end;

Bem essa função fica no OnExit do Edit.
Agluem tem alguma ideia do que pode ser ?.


Robo

Robo

Responder

Posts

24/11/2007

Luciano.lirio

Coloque o código abaixo no evendo KeyPress do edit, acho que vai dar certo.

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  Key := UpCase(Key);
  if not (UpCase(Key) in [´0´..´9´,´X´,´W´,´G´,´R´,´U´,´B´]) then
    Key := 0;
end;



Responder

Gostei + 0

24/11/2007

Robo

Nossa luciano, funcionou bacana cara brigadasso.


Responder

Gostei + 0

24/11/2007

Luciano.lirio

só toma cuidado que a pessoa pode copiar e colar com o botão direito do mouse, seria interessante colocar uma validação antes de gravar no banco de dados.


Responder

Gostei + 0

24/11/2007

Robo

Ok vlws,mas eu te falo que pro cara realmente querer ele tem que querer mesmo colocar um valor diferente para dar o ctrl+c e o ctrl+v.
tipo ele realmente ta querendo mesmo.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar