Ver Mensaje Individual
  #1  
Antiguo 02-03-2007
almudena_13 almudena_13 is offline
Registrado
 
Registrado: feb 2007
Posts: 6
Reputación: 0
almudena_13 Va por buen camino
Red face Capturar combinaciones de teclas tipo CTRL + A

Hola A Todos!

Muchas gracias de antemano!

He estado leyendo mensajes por los foros para ver si encuentro la solución a mi problema, pero debo ser un poco cortita porque no me he enterado aun....
Pido perdón si la solución ya estaba escrita y no he sabido verla....

Bueno, os cuento...

Tengo que capturar combinaciones de teclas tipo CTRL+M, CTRL+N, etc...

Tengo definido el siguiente código:
procedure TfrmMIEMess.FormActivate(Sender: TObject);
begin
SaveMessageHandler := Application.OnMessage;
Application.OnMessage := MyMessageHandler;
end;

donde MyMessageHandler es el método que voy a utilizar para capturar las teclas, y de hecho ya las estoy capturando, pero.... Solo puedo hacerlo de una en una.... no se si me explico...
Mi metodo esta definido de la siguiente manera:
procedure TfrmMIEMess.MyMessageHandler(var Msg: TMsg; var Handled: Boolean);
Donde Msg.message me dice si se ha producido un WM_KEYDOWN o WM_KEYUP y Msg.wParam me indica la tecla que se ha pulsado, pero.... ¿que puedo hacer en este caso que se estan pulsando dos teclas?
¿Estoy utilizando un metodo equivocado? ¿Se puede hacer algo con este que ya tengo definido?

Hace unos dias ya escribi pidiendo ayuda con un tema de menús y como dije en ese momento, esta aplicación me ha caido ahora, ha ido pasando de mano en mano y el codigo es totalmente chapucero con lo que no entiendo la mitad de las cosas. (aparte que mis conocimientos de Delphi no es que sean muy extensos)

Os agradeceria enormemente cualquier ayuda que pudierais ofrecerme.

¡y disculpad por el pedazo de mensaje que estoy escribiendo!

Muchas gracias!

almudena..
Responder Con Cita