Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

windows+m


Dima20 ©   (2003-07-21 10:19:00) 

Уважаемые знатоки помогите
как заставить из делфи закрыть все окна аналагично тому как это происходит при нажатии Windows+m?


Polevi   (2003-07-23 17:29:00) [1]

procedure MinimizeAll;
var
sh:OleVariant;
begin
sh:=CreateOleObject("Shell.Application");
sh.MinimizeAll;
end;


Igor__   (2003-07-23 09:45:00) [2]

Свернуть все!!!

procedure MinimizeAll;
function EnumProc (WinHandle: HWnd; Param: LongInt): Boolean; stdcall;
begin
if (GetParent (WinHandle) = 0) and (not IsIconic (WinHandle)) and (IsWindowVisible (WinHandle)) then
begin
PostMessage (WinHandle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
( @EnumProc, 0)

Свернуть все!!!

procedure MinimizeAll;
function EnumProc (WinHandle: HWnd; Param: LongInt): Boolean; stdcall;
begin
if (GetParent (WinHandle) = 0) and (not IsIconic (WinHandle)) and (IsWindowVisible (WinHandle)) then
begin
PostMessage (WinHandle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
end;
EnumProc := TRUE;
end;
begin
EnumWindows (@EnumProc, 0);
end;


Ученик   (2003-07-22 23:41:00) [3]

>Dima20 (21.07.03 10:19)
procedure TForm1.Button1Click(Sender: TObject);
begin
keybd_event(VK_LWIN, 0, 0, 0);
keybd_event(77, 0, 0, 0);
keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP, 0);
end;


dataMaster   (2003-07-22 17:25:00) [4]

http://blackman.wp-club.net/myfaq/faq0201a.php#anc75


Caligula   (2003-07-22 14:35:00) [5]

Получитить список запущенных приложений (через FindWindow), а затем отправлять сообщения wm_Close...


Крот   (2003-07-22 12:37:00) [6]

Перебери все главные окна и пошли всем сообщение WM_SYSCOMMAND


Dima2   (2003-07-22 11:52:00) [7]

так никто и не ответил :(


AlexKniga   (2003-07-21 10:46:00) [8]

"Свернуть все окна.scf" не сворачивает все окна, он просто перерисовывает рабочий стол.


s.ts   (2003-07-21 10:40:00) [9]

Я имел ввиду, что можно скопировать этот файл к себе (в папку программы с любым именем), а потом вызывать ShellExecute.
Правда, я думаю, что есть и лучший способ (нужно покопаться в MSDN).


Dima20   (2003-07-21 10:34:00) [10]

а если винда не русская ?


s.ts   (2003-07-21 10:29:00) [11]

ShellExecute+
C:\Documents and Settings\user\Application Data\Microsoft\Internet Explorer\Quick Launch\Свернуть все окна.scf


Наверх

Титульная страница Поиск, карта сайта Написать письмо