Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #21  
Antiguo 29-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.338
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Debes registrar esa combinación de teclas de forma global a sistema.
Aquí tienes el código de cómo hacerlo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #22  
Antiguo 29-07-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
en los componentes JVCL creo que ví un componente que hace eso...
Responder Con Cita
  #23  
Antiguo 29-07-2008
rauros rauros is offline
Miembro
 
Registrado: feb 2008
Ubicación: Alicante - Sax / Sax - Alicante
Posts: 235
Poder: 17
rauros Va por buen camino
Ese código no me funciona. Está copiado tal cual.
Responder Con Cita
  #24  
Antiguo 30-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.338
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por rauros Ver Mensaje
Ese código no me funciona. Está copiado tal cual.
Puedes explicar mejor qué te pasa. ¿Porqué no te funciona? ¿No te compila?

RegisterHotKey
es la llamada que se utiliza para
registrar combinaciones de teclas a nivel Global del sistema. Funciona perfectamente (yo mismo la he utilizado varias veces sin problemas).

Busca sobre esa llamada y encontrarás muchos ejemplos, aunque las llamadas son similares a esa.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #25  
Antiguo 30-07-2008
rauros rauros is offline
Miembro
 
Registrado: feb 2008
Ubicación: Alicante - Sax / Sax - Alicante
Posts: 235
Poder: 17
rauros Va por buen camino
Nada más copiar el proyecto a la unidad 1 (unit1.pas) y compilar. Luego clico el botón imprimir Pantalla (una de las registradas) pero no funciona.
Responder Con Cita
  #26  
Antiguo 30-07-2008
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Poder: 22
sur-se Va por buen camino
Eso lo puedes hacer con el componente HotKeyManager.
http://www.vclcomponents.com/Delphi/...ager-info.html
Un saludo.
Responder Con Cita
  #27  
Antiguo 30-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.338
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por sur-se Ver Mensaje
Eso lo puedes hacer con el componente HotKeyManager.
Se puede hacer con muchos más componentes además de ese, pero creo que no radica ahí el problema, ya que si miras el código del procedimiento AddHotKey del componente verás que acaba llamando a las funciones:

* GlobalAddAtom
* RegisterHotKey

Que son las mismas que se llaman en el ejemplo anterior.
Supongo que si no han funcionado antes...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #28  
Antiguo 30-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
{
RegisterHotKey fails if the keystrokes specified for the hot key have
already been registered by another hot key.

Windows NT4 and Windows 2000/XP: The F12 key is reserved for use by the
debugger at all times, so it should not be registered as a hot key. Even
when you are not debugging an application, F12 is reserved in case a
kernel-mode debugger or a just-in-time debugger is resident.
}

esto estaba alla en la funcion. ¿Es posible que sea lo que te esta ocurriendo?
Responder Con Cita
  #29  
Antiguo 30-07-2008
rauros rauros is offline
Miembro
 
Registrado: feb 2008
Ubicación: Alicante - Sax / Sax - Alicante
Posts: 235
Poder: 17
rauros Va por buen camino
Pues sí. Ahora va xD.
Responder Con Cita
  #30  
Antiguo 30-07-2008
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Poder: 22
sur-se Va por buen camino
Bueno pues ahí pongo otra solución sin usar componentes externos como sugiere Neftali:

Código:
unit Unit1;
 
interface 
 
uses 
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, StdCtrls;
 
type 
   TForm1 = class(TForm)
     Button1: TButton;
     procedure FormCreate(Sender: TObject);
     procedure HtoK(var Msg : TWMHotKey); message WM_HotKey;
   private
     { Private declarations }
   public
     { Public declarations }
   end; 
 
var 
   Form1: TForm1;
implementation 
 
{$R *.dfm}
 
procedure tform1.HtoK(var Msg : TWMHotKey);
begin 
showmessage('Alt-V');
end; 
 
procedure TForm1.FormCreate(Sender: TObject);
begin 
  registerHotKey(handle,GlobalAddAtom('ALT_V'),MOD_ALt,vKKeyscan('v'));
 
end; 
 
end.
Un saludo.
Responder Con Cita
  #31  
Antiguo 30-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Si, bueno, sur-se, eso es exactamente el codigo de neftali, pero incorrecto...¿deberas desregistrarlas al acabar la aplicación no?
Responder Con Cita
  #32  
Antiguo 30-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
y...el componente externo lo has citado tu...
Responder Con Cita
  #33  
Antiguo 31-07-2008
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Poder: 22
sur-se Va por buen camino
Efectivamente, un poco más resumido que el código de neftalí, y más sencillo de entender al tener menos código. Si al final faltaría desregistrar, pero es básicamente un ejemplo de esqueleto para hacerlo.

Respecto al componente, efectivamente lo puse yo porque es una solución muy sencilla (haga lo que haga internamente) que encapsula todo. Era por si le servía al compañero que puso el post, nada más. Yo lo utilizo porque me ahorra escribir código nada más.

Un saludo.
Responder Con Cita
  #34  
Antiguo 31-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
si si, claro, efectivamente...
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
Redimensionar componentes de un form madmai Varios 2 07-11-2007 11:02:48
Ayuda con componentes en form Vinicio Varios 8 13-09-2006 21:38:50
Deshabilitar TODOS los componentes de un Form TrUnkS OOP 3 12-04-2006 21:28:28
componentes sin form coleleon OOP 1 30-11-2005 13:10:56
Scalar Componentes al redimensionar Form jsc Varios 5 26-07-2004 16:50:16


La franja horaria es GMT +2. Ahora son las 19:02:19.


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