Сворачивание всех окон
function MyCallback(Wnd: THandle;Param: integer): boolean; stdcall; var style: longint; tsb, rabst: integer; begin tsb:=FindWindow('Shell_TrayWnd', nil); rabst:=FindWindow('ProgMan', 'Program Manager'); Result := Wnd <> 0; style:=GetWindowLong(wnd,GWL_EXSTYLE); style:=style and WS_EX_TOPMOST; if Result and IsWindowVisible(Wnd)and (not IsIconic(WND)) and (wnd<>tsb) and (wnd<>rabst) and (wnd<>FindWindow('Indicator',nil)) and (style<>WS_EX_TOPMOST)and(wnd<>form1.handle)then begin ShowWindow(Wnd,sw_hide); ShowWindow(Wnd,Param); end; end; procedure ShowAllWindows(Cmd: integer); begin EnumWindows(@MyCallback,Cmd); end; |
теперь в любом месте программы, когда необходимо свернуть окна вызываем функцию:
ShowAllWindows(SW_SHOWMINIMIZED); |
Далее: Связь между приложениями »»