скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Сворачивание всех окон




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);






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook