PDA

Ver la Versión Completa : ejecutar Ventanita + m para minimizar


click
16-01-2005, 21:10:37
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
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
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
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:


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