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 30-01-2011
darkcuevas darkcuevas is offline
Miembro
 
Registrado: ago 2010
Posts: 31
Poder: 0
darkcuevas Va por buen camino
Como Crear Programa Que Pulse Una Tecla Continuamente?

hola.
principal mente disculpen que el titulo no explique bn lo que quiero hacer es que me resulta algo difisil explicarlo

voy ha hacer un par de preguntas que creo q van por el mismo lado

1° estoy creando un programa que hace que se precione constante mente una o varias teclas por ejenplo: yo quiero que la letra "a" se precione continua mente sin nesesidad de pulsarla en el teclado...(la pregunta es que codigo devo usar "no tengo ningun tipo de idea de como va el codigo que se usa en este caso")

2° yo quiero que al pulsar por ejenplo: Ctrl+A se active un boton o se prenda un time en pocas palacres un acceso rapido por el teclado (como logro que esto pase?)


bueno espero sus respuestas salu2 y grax de ante-mano

nota: me conedto por la mañana xD Bye
Responder Con Cita
  #2  
Antiguo 30-01-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola darkcuevas.

Podrías utilizar un TTimer para simular la presión continua de una tecla y para tu segunda pregunta, aprovechar el evento OnKeyPress del form.

Ejemplo : ( en un TForm poné un TTimer y un TEdit o un TMemo para visualizar el resultado )
Código Delphi [-]
...
procedure TForm1.FormCreate(Sender: TObject);
begin
  KeyPreview:= True;
  Timer1.Enabled:= False;
  Timer1.Interval:= 250;  // 1/4 seg (o lo que gustes)
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  keybd_event(Ord('A'),0,0,0);  // simular tecla presionada
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var
  Msg: TMsg;
begin
  if (ssCtrl in Shift) and (Key = Ord('A')) then  // Ctrl + A
  begin
    PeekMessage(Msg, 0, WM_CHAR, WM_CHAR, PM_REMOVE); //Quitar Beep
    Timer1.Enabled:= not Timer1.Enabled;  // Activar/Desactivar TTimer
  end;
end;
...

La repetición de pulsación de tecla se activa/desactiva con Ctrl+A.


Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 30-01-2011 a las 12:25:08.
Responder Con Cita
  #3  
Antiguo 30-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Y felizmente, darkcuevas, ha obtenido el código realizado muy inteligentemente por ecfisa, un código creado coherentemente en el que repite constantemente una tecla repetidamente hasta que el usuario decida convenientemente que ya no debe repetirse ininterrumpidamente.
Responder Con Cita
  #4  
Antiguo 30-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Y colorin, colorado......
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 30-01-2011
darkcuevas darkcuevas is offline
Miembro
 
Registrado: ago 2010
Posts: 31
Poder: 0
darkcuevas Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola darkcuevas.

Podrías utilizar un TTimer para simular la presión continua de una tecla y para tu segunda pregunta, aprovechar el evento OnKeyPress del form.

Ejemplo : ( en un TForm poné un TTimer y un TEdit o un TMemo para visualizar el resultado )



La repetición de pulsación de tecla se activa/desactiva con Ctrl+A.


Un saludo.

hola quetal bueno ya prove el codigo que pulsa la tecla


pero no entiendo como calocar el de acceso rapido me podrias explicas un poco mejor como colocarlo?? porfavor

no entiendo bn lo del evento dime como lo pondrias tu paso por paso si no es mucha molestia

(soy algo nuevo en este asunto)


haaa y que conponente es este FormKeyDown???

Última edición por darkcuevas fecha: 30-01-2011 a las 15:09:32.
Responder Con Cita
  #6  
Antiguo 30-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
El form tiene el evento keydown, escribe el código en él.
Responder Con Cita
  #7  
Antiguo 30-01-2011
darkcuevas darkcuevas is offline
Miembro
 
Registrado: ago 2010
Posts: 31
Poder: 0
darkcuevas Va por buen camino
mira yo escrivo el codigo en el evento pero nada al conpilar y marcar ctrl+a no pasa nada
Responder Con Cita
  #8  
Antiguo 30-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bueno, en el ejemplo que ha puesto ecfisa es ctrl+A mayúscula.
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 crear un programa multi-nucleo kurono Varios 8 31-12-2008 04:15:15
Tecla presionada continuamente tonyluna36 Varios 3 04-06-2007 17:33:45
Como crear un programa para que me formatee la PC federico1 Varios 7 02-06-2007 02:26:23
Crear programa Cliente / Servidor Como?? Mc_Hacks Conexión con bases de datos 4 16-11-2006 19:40:05


La franja horaria es GMT +2. Ahora son las 23:15:42.


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