Delphi - copiar funcion de tecla

 
Vista:

copiar funcion de tecla

Publicado por Daniel (2 intervenciones) el 22/10/2007 09:30:16
hola, me gustaria que me explicaseis como copiar la función de una tecla (supr xej) para que creando yo un boton, al pulsar este hiciera la funcion de supr. la tecla supr es solo un ejemplo al igual qu podria ser con la de borrado de una tecla <--- (la flecha, que ahora no caigo en como se llama )

saludos y gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:copiar funcion de tecla

Publicado por E.T. (1244 intervenciones) el 22/10/2007 19:30:39
Intenta el siguiente procedimiento

keybd_event(XXX,0,0,0);

Donde XXX es la virtual key que quieres ejecutar, ejemplo: Vk_Return para el enter, los tres parámetros siguientes no se que son, hay que investigarlos un poco.

Los virtual key codes vienen en la ayuda de delphi, solo hay que tener cuidado al usarlo, yo estaba experimentando con el y tube que reiniciar porque no se que cambió del teclado, que presioné Control+R para abrir la ventana de ejecutar y me hizo automáticamtente un cambio de usuario se windows, y las teclas no esran las correctas, pero eso me pasó por no saber usarlo, lo utilicé para el enter y trabajó muy bien.

NOTA: La acción se realizará en el control seleccionado (botón, edit, combo box, list box... etc), si minimizas la ventana del programa y se ejecuta el procedimiento la acción se ejecutará en la ventana que esté seleccionada, en el control seleccionado, hay que tener cuidado en como usarlo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:copiar funcion de tecla

Publicado por E.T, (1244 intervenciones) el 22/10/2007 19:44:51
Olvidé mencionar, si pones este codigo en un botón, pero quieres que la acción se ejecute en un edit tienes que poner algo como lo siguiente:

Codigo del botón:

begin
Edit1.SetFocus;
keybd_event(VK_RETURN,0,0,0);
end;

y en el evento onKeydown del edit ponemos:

begin
if Key=VK_RETURN then begin
//hacer algo
Button1.SetFocus; //regresamos el foco al botón si lo deseamos
end;
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar