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
  #1  
Antiguo 08-06-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Lanzar evento OnKeyDown

Será una chorrada, seguro, pero hasta que no me lo expliquen y/o lo entienda seguirá siendo un misterio total.

El caso es que para lanzar el "onkeypress" en medio de otro proceso, me pide que le pase 3 variables.

Código Delphi [-]
cboxLaquesea.OnKeyDown(Sender: TObject; var Key: Word; Shift:  TShiftState)

Sender supongo que será "self" ya que es el mismo quien se activa.
Key tendría que ser "VK_ESCAPE" ya que es la tecla que quiero "pulsar".
Shift, aunque en la ayuda que pone que es el estado de las teclas ALT,CTL y demá, no tengo ni puñetera idea de como se utiliza.
¿Alguien me lo aclara?

Gracias muchas y esas cosas que se dicen,
Papulo.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Responder Con Cita
  #2  
Antiguo 08-06-2006
Yosuun Yosuun is offline
Miembro
 
Registrado: jun 2004
Ubicación: Bilbao-Bizkaia
Posts: 28
Poder: 0
Yosuun Va por buen camino
Extraido de la ayuda delphi.

TShiftState indicates the state of the Alt, Ctrl, and Shift keys and the mouse buttons.
Unit
Classes
type TShiftState = set of (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble);
Description
The TShiftState type is used by key-event and mouse-event handlers to determine the state of the Alt, Ctrl, and Shift keys and the state of the mouse buttons when the event occurs. It is a set of flags that indicate the following:
Value Meaning
ssShift The Shift key is held down.
ssAlt The Alt key is held down.
ssCtrl The Ctrl key is held down.
ssLeft The left mouse button is held down.
ssRight The right mouse button is held down.
ssMiddle The middle mouse button is held down.
ssDouble The mouse was double-clicked.

Espero que te sea de ayuda un saludo.
Responder Con Cita
  #3  
Antiguo 08-06-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Gracias, copañerow, pero esto ya lo había leido y no entiendo como poner el maldito shift del averno.

Solo quiero generar el evento OnKeyPress con la tecla VK_ESCAPE, pero lo del Shift no se como usarlo.

Aun así, gracias por pararte a responder.

Papulo.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Responder Con Cita
  #4  
Antiguo 08-06-2006
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.289
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 papulo
Shift, aunque en la ayuda que pone que es el estado de las teclas ALT,CTL y demá, no tengo ni puñetera idea de como se utiliza.
¿Alguien me lo aclara?
Se supone que son las teclas que se están pulsando junto con la que envías.
Si envías la tecla 'A' y en Shift envías [ssAlt], le estás diciendo que pulsan ALT+A. No tiene más complicación.
__________________
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
  #5  
Antiguo 08-06-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Veamos, que con cada respuesta me siento mas incomprendido...

Si yo estoy escribiendo algo de código en el evento "OnChange" de un elemento X y veo que necesito llamar al evento "OnKeyDown" del elemento Y , para que lo lance simulando que he apretado la tecla ESCAPE.

¿Como demonios escribo tan sencilla operación con la tecla ESCAPE?

Porque llamando por ejemplo el evento bitbtn1Click(Self) no tengo ningún problema, pero con el otro evento no se que parametros pasarle, porque en la ayuda si entiendo lo del Shift, pero no quiero pasarle ninguna tecla "extra" apretada

Espero haberme explicado mejor y gracias por la ayuda.

papulo.

PD: Os prometo que lo primero que he hecho ha sido mirarme la ayuda, pero me ha dejado igual de confuso
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0

Última edición por papulo fecha: 08-06-2006 a las 12:43:11.
Responder Con Cita
  #6  
Antiguo 08-06-2006
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.055
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
así, sin mirarlo, de memoria, casi seguro que me equivoco, tengo que consultarlo, pero prueba pasando [] los corchetes
Responder Con Cita
  #7  
Antiguo 08-06-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Juso lo acababa de mirar al ver mas detenidamente la respuesta de Nefftali, estaba ahí escondida, jajaja.

Lo malo de la ayuda es que en el ejemplo no se ve un cagarro y sinceramente, sin experiencia previa, no se como demonios se puede saber eso.

Al final lo he tenido que hacer de la siguiente manera, porque tenía problemas con VK_ESCAPE y su tipo:

Código Delphi [-]
var
esc : word
begin
...
esc := VK_ESCAPE;
componente.OnKeyDown(self, esc, []);
...
end;

Sino, no se como pasarle la tecla directamente en vez de a traves de una variable del tipo que necesita.

Gracias por la ayuda a todos,
Papulo.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Responder Con Cita
  #8  
Antiguo 08-06-2006
Yosuun Yosuun is offline
Miembro
 
Registrado: jun 2004
Ubicación: Bilbao-Bizkaia
Posts: 28
Poder: 0
Yosuun Va por buen camino
No se si te estoy entendiendo bien, creo que lo que quieres hacer es mandar una pulsacion de una tecla a otro control, si es asi haz la busqueda de la palabra SendMessage en el foro y veras un mesaje de hace no mas de 5 o 6 dias en el que tratan el tema.

Un Saludo.
Responder Con Cita
  #9  
Antiguo 08-06-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Voy a mirar eso, que a lo mejor me ahorro unos cuantos quebraderos de cabeza... jejejeje.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Responder Con Cita
  #10  
Antiguo 08-06-2006
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.289
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 papulo
...porque en la ayuda si entiendo lo del Shift, pero no quiero pasarle ninguna tecla "extra" apretada
Puesto que el tipo indicado en un set:
type TShiftState = set of (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble);

basta con [].
__________________
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
  #11  
Antiguo 08-06-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Ale, cosa nueva del día que aprendo.

ASIAAAAAAAAAAAASSSSSSSSSSSSSSSSSSSSSSSS.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
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
OnKeyDown scooterjgm OOP 4 28-06-2011 08:03:30
OnKeyDown Mhil Varios 5 29-12-2005 04:36:19
Lanzar evento Keydown sin apretar la tecla (no, no es telekinesis) papulo Varios 9 22-09-2005 11:17:07
Key:=0 en OnKeyDown de DBCtrlGrid javiermorales OOP 1 16-02-2004 21:12:45
Lanzar evento.... craven OOP 4 08-09-2003 22:04:05


La franja horaria es GMT +2. Ahora son las 10:47:01.


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