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

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

Скрытие окна не работает


Углук ©   (2007-06-11 14:24:00) 

Окно должно находить следующее (нижнее) окно ( не потомок),
и, если хэндл этого окна совпадает с неким заданным, скрывать. Иначе  - показывать. Ниже приведен код . Он работает при условии, что вызывающая процедуру форма имеет свойство FormStyle=fsNormal. Но если  FormStyle=fsStayOnTop,то
условие GetNextWindow(GetForeGroundWindow,GW_HWNDNEXT)=Dataform.Handle  не выполняется, несмотря на то, что форма находится в нужном Z-ордере...


 if DataForm.Showing then
  begin
if GetNextWindow(GetForeGroundWindow,GW_HWNDNEXT)<>Dataform.Handle then
     DataForm.Show
       else
      DataForm.Hide;
 end else
 DataForm.Show;

Вопрос: каким образом можно получить хендл нижележащего окна при условии, что вызывающая процедура имеет FormStyle=fsStayOnTop?


Углук   (2007-06-11 14:30:00) [1]

Вопрос отвалился сам собой :) Разобрался :) Ветку можно удалять (модератору)


Углук   (2007-06-11 14:27:00) [2]

В принципе, нужный эффект можно получить и по-другому, но все же полезно знать.


Наверх

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