Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-11-2004
scooterjgm scooterjgm is offline
Miembro
 
Registrado: ago 2004
Posts: 115
Poder: 20
scooterjgm Va por buen camino
Key Escape

Alguien sabe como puedo mandar una pulsación de la tecla ESCAPE sin que el usuario la tenga que presionar??


Lo necesito para no marear al usuario cuando meta un dato erróneo
__________________
Hay 10 tipos de personas, las que entienden el código binario y las que no.

ww.clubdelphi.com/foros/guiaestilo.php
Responder Con Cita
  #2  
Antiguo 05-11-2004
frudolph frudolph is offline
Miembro
 
Registrado: oct 2004
Posts: 40
Poder: 0
frudolph Va por buen camino
Prueba con lo siguiente código para lanzar la tecla "ESC":

--> SendMessage(Self.Handle, WM_KEYDOWN, VK_ESCAPE, 0);

Puedes reemplazar "Self" por el objeto al cual le quieres enviar el código de escape (tecla).

Luego, en el evento "OnKeyDown" del objeto que debe tomar la tecla escape escribe lo siguiente (ajústalo a tu caso):

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if Key = VK_ESCAPE then showmessage('ok');
// Puedes usar "case" en lugar de "if"
end;
Responder Con Cita
  #3  
Antiguo 24-11-2004
scooterjgm scooterjgm is offline
Miembro
 
Registrado: ago 2004
Posts: 115
Poder: 20
scooterjgm Va por buen camino
Eso no me funciona bien. Entra en un bucle. necesito lanzar la tecla escape en el evento onValidate.
__________________
Hay 10 tipos de personas, las que entienden el código binario y las que no.

ww.clubdelphi.com/foros/guiaestilo.php
Responder Con Cita
  #4  
Antiguo 24-11-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Pero si no quieres marear al usuario ¿por qué no empiezas evitando que salga un mensaje que tenga que cancelar en lugar de cancelarlo tú mismo?

// Saludos
Responder Con Cita
  #5  
Antiguo 07-04-2005
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 21
ASAPLTDA Va por buen camino
hola fudolph
Mi problema es que debo simular la digitacion de un taclado desde una aplicacion delphi para digitar en otro programa, tienes alguna otra idea el otro programa es una emulacion telnet que se conecta a un equipo unix
Responder Con Cita
  #6  
Antiguo 07-04-2005
Alfredo Alfredo is offline
Miembro
 
Registrado: nov 2003
Ubicación: Valencia, Venezuela
Posts: 234
Poder: 21
Alfredo Va por buen camino
Asi:

Puedes simularlo usando este codigo:

Código:
keybd_event( VK_ESCAPE,0,KEYEVENTF_EXTENDEDKEY, 0);
keybd_event( VK_ESCAPE,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);
si quieres probarlo pega un boton y asignale este codigo en el evento KeyPress del form y en la propiedad KeyPreview debes cambiar a True.

Código:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #27 then showmessage('pulso escape');
end;
Bien,
__________________
if Vivir = Vivir + Aprender then Aprender = ?
Alfredo Borges
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


La franja horaria es GMT +2. Ahora son las 08:09:03.


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