Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-12-2005
FeLiXxUcO FeLiXxUcO is offline
Registrado
 
Registrado: dic 2005
Posts: 5
Poder: 0
FeLiXxUcO Va por buen camino
Muchas Gracias David, el fin de semana hare pruebas y ya te comentare
Responder Con Cita
  #2  
Antiguo 05-12-2005
FeLiXxUcO FeLiXxUcO is offline
Registrado
 
Registrado: dic 2005
Posts: 5
Poder: 0
FeLiXxUcO Va por buen camino
Funciona Perfectamente

Bueno David, he utilizado el codigo que me pusiste en mi aplicacion y hace exactamente lo que necesitaba asi que me ha venido de perlas. Solo una aclaracion, tal vez lo que querias buscar en cuanto a Ord("O") en c++ Builder creo que se hace asi: (int)'O' al menos lo uso asi y funciona.

RegisterHotKey(Application->Handle, GlobalAddAtomA("MiHotKey"), MOD_CONTROL, (int)'O');


De nuevo Agradecerte el codigo porque me ha venido genial
Responder Con Cita
  #3  
Antiguo 05-12-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.141
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,


Cita:
Empezado por FeLiXxUcO
(...) tal vez lo que querias buscar en cuanto a Ord("O") en c++ Builder creo que se hace asi: (int)'O' al menos lo uso asi y funciona.
Pues gracias por comentarlo, porque acaso pueda tenerlo en cuenta en su momento. Lo cierto es que probé con (Integer)"O" y con (Cardinal)"O" (creo recordar) y no funcionaba... Bueno. De todos modos me alegro de que te fuera bien el tema. Gracias de nuevo por tus comentarios a respecto.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 08-02-2006
i_berbeu i_berbeu is offline
Miembro
 
Registrado: sep 2005
Posts: 23
Poder: 0
i_berbeu Va por buen camino
Yo he probado eso del registerhotkey y no me ha funcionado la verdad
no me pilla la pulsacion de la tecla o
seguramente es porque no lo entiendo del todo o falta algo de codigo que no se poner...
a ver si alguien pudiera explicarme
Gracias
Responder Con Cita
  #5  
Antiguo 09-02-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.141
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

i_berbeu, no puede ayudársete si no das más datos, o eres más preciso. Decir:

Cita:
Yo he probado eso del registerhotkey y no me ha funcionado la verdad
Sin decir qué es lo que no te ha funcionado; sin especificar qué error te aparece; sin referir el código fuente que estás tratando de utilizar... como comprenderás no es por no querer, es que así es muy complicado echarte una mano. ¿Verdad?

Cita:
seguramente es porque no lo entiendo del todo o falta algo de codigo que no se poner... a ver si alguien pudiera explicarme
Seguramente así sea. Pero toma nota de lo que te digo más arriba. Y más aún toma nota del código fuente que más arriba en este Hilo tienes a tu disposición. No se explica exactamente qué se lleva a cabo, pero, funcionar, funciona. Así pues, algo debes estar haciendo mal, eso está más o menos claro y es lo más normal del mundo; sin embargo, sin especificar un poco más se hace complicado echarte una mano. ¿No te parece?
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #6  
Antiguo 12-02-2006
i_berbeu i_berbeu is offline
Miembro
 
Registrado: sep 2005
Posts: 23
Poder: 0
i_berbeu Va por buen camino
bueno vamos a ver si me explico mejor en lo que me falla... yo pongo este codigo(en c++ builder 5)
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("MiHotKey"), MOD_CONTROL, 79);
}

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
UnregisterHotKey(Application->Handle, GlobalAddAtomA("MiHotKey"));
}

// Declarado en la cláusula "private" de "TForm1"
//
void __fastcall TForm1::AppMessage(tagMSG &Msg, bool &Handled)
{
if (Msg.message == WM_HOTKEY)
{
if ( (LOWORD(Msg.lParam) == MOD_CONTROL) && (HIWORD(Msg.lParam) == 79) )
ShowMessage("Pulsaste las teclas CTRL + O");
}
}

que es el que pusiste tu DEC
entonces segun lei, se supone que me deberia pillar la pulsacion de la tecla "o"
aunque mi formulario no tenga el foco. o teniendolo, me da igual....
el caso es que el evento onMessage me pilla en la variable Msg ciertos valores. entonces si miro esos valores en Msg.message tenemos valores del tipo 670, 610, 14, 1550 y cosas asi, que yo no entiendo como eso va a ser igual a VM_HOTKEY a menos que sea un tipo enumerado que no lo se
entonces, resulta que aunque pulse la "o" a mi el evento ese no me captura un mensage en el cual se meta dentro hasta el ShowMessage.

Espero haberme explicado bien con esto y a ver si me solucionais la duda alguno
Gracias
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 04:27:49.


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