Сворачивание всех окон
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);
|
|