![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
fsStayOnTop не работает? [D6, Win95/98]
Damage © (2002-11-26 22:35:00)Здравствуйте, читатель!!!
Не поможете ли разобраться вот с чем:
Есть программа, форма которой имеет FormStyle = fsStayOnTop
После первого запуска все нормально, форма сверху всех.
Потом происходит (так надо) ShowWindow с параметром SW_MINIMIZE, и ShowWindow с параметром SW_SHOWNORMAL, и форма становится обычной, т.е. не "поверх всех". Принудительно-повторное присвоение fsStayOnTop не помогает (даже после ShowWindow).
Игорь Шевченко (2002-11-28 14:11:00) [1]До SetWindowPos, разумеется, современная наука не додумалась.
До того, чтобы посмотреть в forms.pas что делает FormStyle := fsStayOnTop, разумеется тоже. А зря. Надо иногда RTFS и подумать немножко.
Присваивание стиля fsStayOnTop вызывает функцию SetWindowPos один раз. То есть, форма с этим стилем не рассчитана последующую минимизацию и восстановление, не для этого стиль придуман, а для того, чтобы форма повисела на экране (не сворачиваясь), пользователь какие-то срочные действия сделал, и закрыл ее.
В кладовке, в разделе "Готовые программы" лежит программа StayOnTop - поглядите, оно может, чем полезным окажется.
Almaz (2002-11-28 01:18:00) [2]
> Damage (26.11.02 22:35)
Форма основная или дочерняя ?
LongIsland (2002-11-27 21:07:00) [3]А если попробовать ShowWindow(Handle, SW_RESTORE)?
Damage (2002-11-27 21:01:00) [4]Даже если на таскбаре мышей попереключать приложения - StayOnTop теряет свою силу Ж:-\ Это винды наверное глючат?
Kibitzer (2002-11-26 22:53:00) [5]Странно. У меня и на D5 и на D6 остаётся fsStayOnTop после
SW_MINIMIZEс последующим SW_SHOWNORMAL. :-/
ps. У меня Win2000, может из-за этого?