Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-04-2006
JuanErasmo JuanErasmo is offline
Miembro
 
Registrado: ago 2005
Posts: 544
Poder: 19
JuanErasmo Va por buen camino
Como permitir que des`pues de registar un hotkey, continue hacia otra aplicación...?

Buenas tardes tal vez la pregunta no es clara pero me fué dificil formularla....
El problema es el siguiente....
utilizo el siguiente codigo para registar un Hotkey por ejemplo la barra espaciadora :
Cita:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Application->OnMessage = AppMessage;
//
// 79 es el código ASCII de la letra "O". No he conseguido encontrar la función
// correspondiente a "Ord" (en Delphi) aquí en C++ Builder. He probado con
// Integer("O") y con Cardinal("0"), pero, no funciona, así que al cabo he optado
// por pasar como tercer parámetro de "RegisterHotKey" el número 79, que ya sabes
// lo que quiere significar.
//
RegisterHotKey(Application->Handle, GlobalAddAtomA("MiHotKey2"), 0 , 32);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::AppMessage(tagMSG &Msg, bool &Handled)
{
if (Msg.message == WM_HOTKEY)
{
if ( (LOWORD(Msg.lParam) == MOD_CONTROL) && (HIWORD(Msg.lParam) == 32) )
ShowMessage("Pulsaste barra espaciadora");
}
}
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
UnregisterHotKey(Application->Handle, GlobalAddAtomA("MiHotKey"));
}
funciona perfecto...cuando presiono "espacio", si estoy por ejemplo en word, mi aplicación detecta el evento...pero en word no escribe el espacio.....
es decir no se libera la tecla mientras esta en word, y el evento de teclado no llega a word.....
COmo hago para que mi aplicación sepa que tecla se toco y ademas, en la aplicación word (p .ej.) tambien llegue normalmente??
Gracias por su ayuda!
Nota:
Tambien he intentado mandar un evento de teclado desde el codigo a la aplicacion con postmessage, pero cae en un loop....
Gracias
Responder Con Cita
  #2  
Antiguo 10-04-2006
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Tienes que "registrar" un hook de teclado. Te recomiendo buscar en el foro al respecto, ya se ha hablado en mas de una ocasión.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como cargo una imagen desde Mysql hacia aplicacion Delphi7.0? gozi Conexión con bases de datos 1 06-02-2006 19:41:11
¿Como no permitir mas de 1 ejecucion de la misma aplicacion? Moises22 Varios 2 27-09-2005 13:47:19
Tmessage Hotkey hacia aplicacion externa vtdeleon OOP 4 24-09-2005 17:23:25
Como Presionar un Boton de una Aplicación a otra?????? AGAG4 Varios 2 13-01-2005 22:28:58
Permitir la ejecucion de una Sola Aplicacion lucianojdg Varios 1 16-10-2004 00:06:44


La franja horaria es GMT +2. Ahora son las 12:07:04.


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
Copyright 1996-2007 Club Delphi