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

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

Подскажите ;!!!! [D6, Win2k]


Страницы:   1 2

PETR ©   (2002-06-04 10:41:00) 

как сделать так чтобы при запуске моего приложение все окна на рабочем столе сворачивались,вопрос помойму уже обсуждался если не трудно дайте ссылку !

Зарание спасибо !


PETR   (2002-06-04 12:50:00) [1]

>Виктор Щербаков

Ура все получилось СПАСИБО !!!!!!!!!!!


PVOzerski   (2002-06-04 12:34:00) [2]

Опять же, уж коль скоро EnumWindows пользуемся, ужели трудно в
callback-функции сравнить хэндл найденного окна с хэндлом формы
приложения перед посылкой сообщения?


Виктор Щербаков   (2002-06-04 12:31:00) [3]

Вот так должно работать.
function EnumProc (WinHandle: HWnd; Param: LongInt): Boolean; stdcall;
begin
if (GetParent (WinHandle) = 0)
and (not IsIconic (WinHandle))
and (IsWindowVisible (WinHandle)
and (WinHandle <> Application.Handle))
and (WinHandle <> Form1.Handle) then
begin
PostMessage (WinHandle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
Inc(Count);
end;
EnumProc := TRUE;
end;


PETR   (2002-06-04 12:30:00) [4]

> Игорь Шевченко
можно конечно , но возникает иногда потребности , приходиться лезть в дебри вы уж извиняйте !


PVOzerski   (2002-06-04 12:29:00) [5]

А может, СНАЧАЛА все окна свернуть, а уж ПОТОМ сделать форму
своего приложения видимой?


PETR   (2002-06-04 12:25:00) [6]

>Виктор Щербаков
нет не получилось и мое приложение свернулось


Игорь Шевченко   (2002-06-04 12:21:00) [7]


> Я недавно начал изучать DELPHI (поэтому может чего недопонимаю,
> да и англиским туго)


А нельзя изучать Delphi на более простых и безобидных примерах ?

Program Files\Borland\Delphi\Demos\...


Виктор Щербаков   (2002-06-04 12:09:00) [8]

Попробуй так:
if (GetParent (WinHandle) = 0)
and (not IsIconic (WinHandle))
and (IsWindowVisible (WinHandle) and (WinHandle <> Form1.Handle))
then begin
PostMessage (WinHandle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
Inc(Count);
Смысл в том, чтобы не отправлять сообщение в окна своего приложения.


PETR   (2002-06-04 12:08:00) [9]

Я недавно начал изучать DELPHI (поэтому может чего недопонимаю, да и англиским туго) но всетаки подскажите !!!!


PETR   (2002-06-04 11:59:00) [10]

Ребят попробовал выше перечисленный код сворачивает все(это хорошо),а мне надо чтоб мое приложение осталось не тронутым!!!


Song   (2002-06-04 11:41:00) [11]

2Виктор Щербаков © (04.06.02 10:55)
SC_MAXIMIZE и SC_CLOSE веселее :)))


PETR   (2002-06-04 11:40:00) [12]

Спасибо всем


Pat   (2002-06-04 11:18:00) [13]


var count:integer;
....
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);
Inc(Count);
end;
EnumProc := TRUE;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Count:=0;
EnumWindows (@EnumProc, 0);
caption:="Свернуто "+inttostr(count)+" окон";
end;


Игорь Шевченко   (2002-06-04 11:17:00) [14]

Я написал. В процедуре перечисления окон надо посылать каждому не своему окну это сообщение.
А зачем, кстати, это надо?


Виктор Щербаков   (2002-06-04 11:16:00) [15]


> пришлось перезагружаться

Так и знал, что этим кончится :)

Если серьезно, то см. Игорь Шевченко © (04.06.02 10:46)
Почитай в SDK про EnumWindows.


PETR   (2002-06-04 11:14:00) [16]

Не ужели не подскажите !!!!!!!!!!!!!!!!!!!!!!!!!!!!


PETR   (2002-06-04 11:12:00) [17]

Ребят первый способ сворачивает только мое приложение ,а второй способ нет слов одни слюни :),обезобразил мой рабочий стол пришлось перезагружаться, всетаки как свернуть все окна на рабочем столе кроме моего А!


Виктор Щербаков   (2002-06-04 10:55:00) [18]

Игорь Шевченко © (04.06.02 10:51)
Всё намного интереснее :)))


Игорь Шевченко   (2002-06-04 10:51:00) [19]

Виктор Щербаков © (04.06.02 10:50)

Свое приложение при этом тоже сворачивается ? :-)


Виктор Щербаков   (2002-06-04 10:50:00) [20]

PostMessage (HWND_BROADCAST, WM_SYSCOMMAND, SC_MINIMIZE, 0)
:)))


Страницы:   1 2

Наверх

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