Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2002.09.30;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
1-98094
Link
2002-09-19 19:19
2002.09.30
Печать текста и печать отчёта


14-98271
Бармен
2002-09-03 12:20
2002.09.30
Срочно нужен анекдот на тему смены работы


8-98228
Groove
2002-06-01 14:15
2002.09.30
Кнопочки из Flash


14-98283
Neox
2002-09-04 00:06
2002.09.30
скорость работы с DLL


1-98161
antonioxxx
2002-09-15 09:06
2002.09.30
Проблема с компиляцией.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский