Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.30;
Скачать: CL | DM;

Вниз

Как можно программно свернуть все окна?   Найти похожие ветки 

 
Kick   (2002-06-19 13:44) [0]

Как можно программно свернуть все окна?


 
Игорь Шевченко ©   (2002-06-19 13:47) [1]

Каждому окну послать сообщение PostMessage(Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0);


 
Sasha9 ©   (2002-06-19 13:51) [2]

или имитировать нажатие кнопок win+m


 
Kick   (2002-06-19 14:03) [3]

А как получить Handle активного в данный момент окна?


 
Kick   (2002-06-19 18:25) [4]

ПОМОГИТЕ ПОЖАЛУЙСТА!


 
Volj ©   (2002-06-19 18:58) [5]

GetFocus или GetForegroundWindow.


 
Игорь Шевченко ©   (2002-06-20 10:28) [6]

Kick (19.06.02 18:25)

Если надо свернуть все, то в процедуре вызываемой из EnumWindows
надо отфильтровать только те окна, которые отображаются на экране. Иначе много чего можно насворачивать


 
Stone   (2002-06-20 22:59) [7]

procedure MinimizeAllApp;
VAR
Wnd : hWnd;
buff: ARRAY [0..127] OF Char;
begin
Wnd := GetWindow(MainForm.Handle, gw_HWndFirst);
WHILE Wnd <> 0 DO BEGIN {Не показываем:}
IF (Wnd <> Application.Handle) AND {-Собственное окно}
IsWindowVisible(Wnd) AND {-Невидимые окна}
(GetWindow(Wnd, gw_Owner) = 0) AND {-Дочернии окна}
(GetWindowText(Wnd, buff, sizeof(buff)) <> 0) {-Окна без заголовков}
THEN BEGIN
{тут во и пишешь:}
PostMessage(wnd, WM_SYSCOMMAND, SC_MINIMIZE, 0);
{или что-то вроде этого}
END;
Wnd := GetWindow(Wnd, gw_hWndNext);
END;
end;


 
sndanil ©   (2002-06-21 14:00) [8]

...а еще вместо PostMessage можно использовать CloseWindow... забавно правда? эта функция минимизирует окно, а не закрывает...


 
Victor ©   (2002-07-05 06:27) [9]

По моему можно сделать всё проще (единственная опастность в этом случае что и рабочий стол тоже свернёться:))а так всего одна строчка
sendmessage(findwindow(nil,""),wm_syscommand,sc_minimaize,0);
ну вроде бы всё:)


 
zmy   (2002-07-19 08:41) [10]

Делаешь Project->Import Type Library->Microsoft Shell Controls And Automation
Потом в uses - Shell32_TLB

var Sh: IShellDispatch;
Begin
Sh := CoShell.Create;
Sh.UndoMinimizeAll;
и
Sh.MinimizeAll;

end;


 
Незарегистрированный   (2002-07-19 13:06) [11]

>To zmy
Подскажите пожалуйсьа, где можно почитать про эти интерфейсы и посмотреть примеры их использования (применительно к Delphi).


 
Song ©   (2002-07-19 14:35) [12]

>>Как можно программно свернуть все окна?

:-))

PostMessage(HWND_BROADCAST,WM_SYSCOMMAND,SC_MINIMIZE,0);



Страницы: 1 вся ветка

Текущий архив: 2002.09.30;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
7-98385
AlexRya
2002-07-15 22:32
2002.09.30
Drag&drop объектов йз своего приложения в проводник


7-98366
дикое Кенгуру
2002-07-15 06:47
2002.09.30
Как в Дельфи снять скриншот с вэб-камеры и записать видео ?


1-98156
Poirot
2002-09-17 21:30
2002.09.30
Проход по всем полям Record????


1-98159
X-Vizitor
2002-09-17 21:49
2002.09.30
Как проверить кем закрывается приложение


14-98324
ded_di
2002-09-05 12:53
2002.09.30
редактор запросов