![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
мое окно топнее всех .Всегда.
slpro © (2003-02-24 10:32:00)даже если мое окно теряет фокус , оно должно быть поверх всех.
Делаю такую штуку частым таймером.
Это не красиво и неправильно.
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, ClientHeight, SWP_NOMOVE or SWP_SHOWWINDOW);
Скажите как победить ? Знаю что можно решить вопрос красиво.Спасибо
DVM (2003-02-26 12:35:00) [1]
> На дно нельзя по той же причине, что и на верх...;-)
нет, похоже на дно все таки можно - пример эксплорер. Я что то не видел пока программы, способной расположится между десктопом и значками эксплорера на десктопе. Наверное в виндах есть для этого какие то средства (может и скрытые).
slpro (2003-02-26 09:17:00) [2]При одном экземпляре программы))
slpro (2003-02-26 09:12:00) [3]М да .... только таймер!?
Говорить чаще других что я топ.
jack128 (2003-02-26 07:52:00) [4]На дно нельзя по той же причине, что и на верх...;-)
DVM (2003-02-25 18:26:00) [5]Попытка сделать окно выше всех - то же самое, что попытка придумать число больше всех других (связь прямая). На дно - можно, наверх - нельзя.
DVM (2003-02-25 18:22:00) [6]Ну и что, думаете что сделали. Теперь запустите две копии своей программы и наслаждайтесь эффектом, когда одно ваше окно "не топнее всех"
[lamer]Barmaglot (2003-02-25 15:54:00) [7]Он самый.
Sorry за Offtopic...
gsu (2003-02-25 15:31:00) [8]>> [lamer]Barmaglot © (25.02.03 14:49)
lamer - это клан что ли
[lamer]Barmaglot (2003-02-25 14:49:00) [9]Может я не прав, но отловить WM_Paint? + ValidateRect
slpro (2003-02-25 14:48:00) [10]gsu Спасибо!
attachthreadinput+setforegroundwindow
Теперь все красиво.
Лечится вызовом 2-х функций в OnShow:
SetWindowPos(Handle,
HWND_TOPMOST,
Left,
Top,
Width,
Height,
SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
SetForegroundWindow(Form1.Handle); SetWindowPos(Form1.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE)
Один коментарий могут перенести в рубрику потрепатся.)))
Чей этаж выше, и окно тоже.
slpro (2003-02-25 14:16:00) [11]2 Anatoly Podgoretsky чейтаймер чаще, тот и выше!:)
gsu (2003-02-25 14:14:00) [12]attachthreadinput+setforegroundwindow
slpro (2003-02-25 14:11:00) [13]
Только программно надо!
Gde to v svoistvah formi est" Always on top.
Я даже знаю где(видел пару раз).)))
FormStyle := fsStayOnTop --- Такой топ мне не топ.Все знают какой он. Пускай форма без фокуса будет fsStayOnTop . Кто может без таймера?
___ALex___ (2003-02-24 13:33:00) [14]FormStyle := fsStayOnTop
Anatoly Podgoretsky (2003-02-24 13:21:00) [15]А мое окно, я то же хочу и выше твоего.
Будем драться за высоту?
Snap (2003-02-24 13:17:00) [16]Gde to v svoistvah formi est" Always on top. A esli ne programmno, to est" plugin dla Total Commander, Tip Top nazivaetsa, tak on dazhe prozrachnost u lubogo okna mozhet postavit".
DVM (2003-02-24 10:52:00) [17]
> Делаю такую штуку частым таймером.
и правильно делаешь так как только так можно вылезти поверх всего, нотя бы на короткое время.