Ver Mensaje Individual
  #17  
Antiguo 19-06-2008
Avatar de GaaK
GaaK GaaK is offline
Miembro
 
Registrado: oct 2005
Ubicación: Trujillo - Peru
Posts: 31
Reputación: 0
GaaK Va por buen camino
Hola todos, he retomado este antiguo debate porque no logro entender...

Sea un Form que contiene varios Edits (u otros componentes que puedan enfocarse vía TAB).

La idea
: En Edit1 quiero mostrar el código de la tecla presionada, para ello tengo los dos procedures de dicho Edit así:

Código Delphi [-]
KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
 begin
   Edit1.Text := 'Scancode: ' + IntToStr(Key) + ' $' + IntToHex(Key,3);
 end;
 
 KeyPress(Sender: TObject; var Key: Char);
 begin
   { KeyPress isn't called if F1..F12 }
   case Key of
     { 48..57, 96..105 }
     '0'..'9'  : Edit1.Text := Key; //esta línea es para otros propósitos...
   end;
 end;
... mis rutinas funcionan bien y reconocen todas las teclas EXCEPTO la tecla TAB.
Intento reconocerla vía KeyDown (VK_TAB) o en KeyPress(#9) y siempre por siempre se enfoca el siguiente componente (Edit2 por ejemplo).

Lo que quiero: Es que me reconozca la pulsación de TAB y me muestre en Edit1 su código (9) y que termine, así como ocurre al presionar un número por ejemplo.

He intentado lo mencionado arriba (CMDialogKey) y me muestra el mensaje al presionar TAB, pero mi foco sigue moviéndose, quiero que se quede quieto.


Espero sus sabios comentarios

Gracias

- Gaak -
__________________
L'Gaak dice
Responder Con Cita