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

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

Ньюанс при добавлении формы в таск бар.


Eraser ©   (2006-01-23 14:45:00) 

Итак ситуация такая. В приложении необходимо, чтобы помимо главной формы в таск баре отображаласть ещё одна форма.

Перекрыл метод CreateParams следующим образом

 protected
   procedure CreateParams(var Params: TCreateParams); override;
procedure TfmSecond.CreateParams(var Params: TCreateParams);
begin
 inherited CreateParams(Params);
 Params.ExStyle :=  Params.ExStyle or WS_EX_APPWINDOW;
end;

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

Перекрываю CreateParams так:

procedure TfmSecond.CreateParams(var Params: TCreateParams);
begin
 inherited CreateParams(Params);
 Params.WndParent := GetDesktopWindow;
end;


теперь при сворачивании главной формы сворачивается, только главная форма, что и требовалось, НО
при появлении хинта на доп. форме, главная форма выскакивает на передний план!

Как избавится от этого "бага"?

Спасибо.

PS Скачать тестовое приложение можно тут (только исходники)
http://aledensoft.com/twoforms.zip(11 KB)


Eraser   (2006-01-23 20:08:00) [1]

С трудом вот нашёл несколько ссылок по теме
http://blogs.teamb.com/deepakshenoy/archive/2005/04/26/4050.aspx

http://groups.google.com/group/borland.public.delphi.vcl.components.writing/msg/730885513921e8be?ie=UTF-8&oe=UTF-8&as_umsgid=3d4bd411_1@dnews&lr=&hl=pt

http://groups.google.com/group/borland.public.delphi.nativeapi.win32/browse_thread/thread/f5cd2161d871edc9/d7e78910e68dfccf#d7e78910e68dfccf

http://groups.google.com/group/borland.public.delphi.language.delphi.general/browse_thread/thread/788d4f62abeb33a2/99f6a238d3624fbb?hl=en#99f6a238d3624fbb

универсального и полного решения так и не увидел ...


Eraser   (2006-01-23 16:16:00) [2]


> stakan ©   (23.01.06 16:10) [3]

перекомпилировал на D7 - эффект наблюдается... :-(


stakan   (2006-01-23 16:10:00) [3]


> второй раз эффект наблюдается

И второй раз не наблюдается :(


Eraser   (2006-01-23 16:06:00) [4]


> Stakan ©   (23.01.06 15:37) [1]

уточнение, главная форма вылазеет на передний план, в случае если она не свёрнута и это НЕ происходит при первом появлении хинта, второй раз эффект наблюдается.


Stakan   (2006-01-23 15:37:00) [5]

Собрал твой проект, у меня главная форма на передний план не вылезает.
(D6, W2K)


Наверх

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