Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   ejecutar Ventanita + m para minimizar (https://www.clubdelphi.com/foros/showthread.php?t=17643)

click 16-01-2005 21:10:37

ejecutar Ventanita + m para minimizar
 
como puedo decirle a mi programa que ejecute la funcion de esas dos teclas, para que minimize todas las ventanas abiertas de windows, esto con el objetivo de tener menos codigo en mi programa.

sabes?

marcoszorrilla 16-01-2005 21:23:15

Código Delphi [-]
procedure TForm1.Button1Click(Sender:TObject);
var
intHwnd:Integer;
begin
intHwnd :=FindWindow('Shell_TrayWnd', nil);
PostMessage(intHwnd,WM_COMMAND,419,0);
end;
//Changer 419 par 416 pour restaurer les fenêtres

Este es el código, la combinación de teclas le asocias la que quieras

click 16-01-2005 21:28:10

perfecto y exacto
 
esto es mas sencillo que el tremendo codigo que tenemos en trucomania para minimizar todas las ventanas, alguna forma para saber los valores de las teclas?

Gracias por tu pronta respuestas.

marcoszorrilla 16-01-2005 21:31:07

Pues utilizas el evento OnKeyPress del Form, pero que combinación de teclas quieres?

Un Saludo.

click 16-01-2005 21:40:29

por ejemplo
 
si al rato necesito combinar ventanita+E para el explorer, ventanita+pausa para que me salga las propiedades de mi sistema, como modifico este codigo que pusiste para poner la combinacion deseada?

Es como el mapa de teclas virtuales que sale al precionar F1 en cualquier onKeyDown?

ruina 17-01-2005 13:10:10

si lo que quieres es minimizar todo y sacar el escritorio la combinación es "ventanita + D" (no tienes que programar nada, simplemente dile al usuario como se hace)


Si lo que quieres es que al darle a un bitbutton se minimize todo puedes simular que el usuario ha apretado esas teclas:
Código Delphi [-]
 
   keybd_event(VK_LWIN,MapvirtualKey( VK_LWIN,0),0,0) ;
   keybd_event(Ord('D'),MapvirtualKey(Ord('D'),0),0,0);
   keybd_event(Ord('D'),MapvirtualKey(Ord('D'),0),KEYEVENTF_KEYUP,0);
   keybd_event(VK_LWIN,MapvirtualKey(VK_LWIN,0),KEYEVENTF_KEYUP,0);
Esto lo usaba yo para sacar el escritorio cada vez que minimizaban un form modal, enganchando con el evento OnMinimize


La franja horaria es GMT +2. Ahora son las 23:59:30.

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