Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Problemas con el onKeyDown de un Mask Edit (https://www.clubdelphi.com/foros/showthread.php?t=45826)

luigi_cr 14-07-2007 20:17:40

Problemas con el onKeyDown de un Mask Edit
 
Buenas,

Mi problema es el siguiente: Tengo un MaskEdit que solo acepta número y un maximo de 12 digitos, ok, lo que sucede es que kiero atrapar la tecla enter en el evento onKeyDown, y verificar que no este en blanco y si lo esta que ponga un 0, lo hice de la siguiente manera:

Código Delphi [-]
procedure TfrmElFrom.txtElMaskEditKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
   strTemp : String;
begin
     if IntToStr(Key) = '13' then
     begin
       strTemp := txtElMaskEdit.Text;
       strTemp := Trim(strTemp);
       if strTemp = '' then
          begin
               txtElMaskEdit.Text := '0';
          end;
      end;
end;


El evento me funciono a la perfeccion, utilice la variable strTemp (mala practica) pq el txtElMaskEdit cuando le aplicada el trim no funcionaba?????, dejaba el txtElMaskEdit igual....

Bueno, despues hice una modificación:
Código Delphi [-]
if strTemp = '' then
   begin
        txtElMaskEdit.Text := '0';
   end;
btnElBoton.setFocus;


y Hay empezaron los problemas...

comenzo a darme el siguiente error:
[IMG]file:///C:/Windows/Temp/moz-screenshot.jpg[/IMG]
me sale un cuadro de mensaje diciendo:


projec bla bla raised execption class EConvertError with message ''' is not value integer value'

OK lo cambio a como me funciono, y lo ejecuto de nuevo y sorpresa el mismo error..


Gracias por la ayuda

luigi_cr 14-07-2007 20:27:34

Ya encontre el error de todas maneras muchas gracias..

Lo que paso es que en el form exististia un boton con la propiedad default en true, lo que haria que cada vez que se presionara enter se activaria en onClick del boton, ignorando lo demas y pasando por encima de mi validación.


La franja horaria es GMT +2. Ahora son las 17:47:57.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi