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

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

StayOnTop [D7, WinXP]


Neznaika ©   (2005-02-16 11:12:00) 

Подскажите что-нибудь для того чтобы сделать вторуюформу поверх всех окон.
З.Ы. С первой (главной формой)все ОК.


Neznaika   (2005-02-16 14:11:00) [1]

Johnmen ©   (16.02.05 13:57) [18]

спасибо попробую, правда сечас делфи под рукой нету...:)


Anatoly Podgoretsky   (2005-02-16 14:02:00) [2]

Neznaika ©   (16.02.05 13:45) [17]
Ну уже же сказали, выше всех нельзя - есть и другие желающие. Можно выше в всех в отдельно взятый период, оно и работает.


Johnmen   (2005-02-16 13:57:00) [3]

М.б. тебя так устроит ?

type
 TYourForm = class(TForm)
...
private
 procedure CreateParams(var Params: TCreateParams); override;
...
procedure TYourForm.CreateParams(var Params: TCreateParams);
begin;
 inherited CreateParams(Params);
 Params.WndParent := GetDesktopWindow;
 end;


Neznaika   (2005-02-16 13:45:00) [4]

Ну как же быть мастера???


Neznaika   (2005-02-16 13:24:00) [5]

UP UP UP


Neznaika   (2005-02-16 12:59:00) [6]

Johnmen ©  (16.02.05 12:52) [12] извини не дождался твоего ответа...

Этот метод мне известен, он работает только для "главной" формы...
А как на счет второй?

З.Ы. Если я не правильно подбираю формулировку для "второй формы", обясню: File|New|Application, а затем File|New|Form, так вот эту вторую форму надо и вытащить как можно выше...


Johnmen   (2005-02-16 12:58:00) [7]

Что "это" ?


Neznaika   (2005-02-16 12:54:00) [8]

Не хотите ли Вы сказать, что это не реально?


Johnmen   (2005-02-16 12:52:00) [9]

Это другое дело, когда не говорим о всех. Напр. так:
В OnCreate формы

var Rect: TRect;

 GetWindowRect(Handle,Rect);
 SetWindowPos(Handle,HWND_TOPMOST,Rect.Left,Rect.Top,Rect.Right-Rect.Left,Rect.Bottom-Rect.Top, SWP_SHOWWINDOW);


Neznaika   (2005-02-16 12:29:00) [10]

>>Я не шучу и не надо наездов...
я и не наезжаю...
Просто хочу выяснить как это сделать...
Люди ведь делают как-то?...
Не зря же придумали StayOnTop, пусть даже для его полноценной работы надо дописать пару строк, к тому же известны методы как это сделать для главной формы...
Может я ошибаюсь на счет - выше всехокон, но как сделать "как можно выше" ...


DVM   (2005-02-16 12:09:00) [11]


> Ниже нельзя по той же самойпричине

можно


TUser   (2005-02-16 12:07:00) [12]


> Ниже всех можно, выше абсолютно нет!

Ниже нельзя по той же самойпричине


Johnmen   (2005-02-16 12:04:00) [13]

>Neznaika ©   (16.02.05 11:49) [5]

Я не шучу и не надо наездов...


DVM   (2005-02-16 11:56:00) [14]

Частичное решение проблемы SetWindowPos вкупе с WM_WINDOWPOSCHANGING


DVM   (2005-02-16 11:54:00) [15]


> Уважаемый Johnmen © Вы либо шутите, либо никогда не встречали
> программ, в окне настроек которых, можно поставить галочку
> -"Поверх всех окон". Чего я собственно и хочу сделать...

Это невозможно в принципе. Доказательство очень простое: что будет с двумя копиями одной и той же программы, окна которой "поверх всех". Обе будут поверх друг друга?
Ниже всех можно, выше абсолютно нет!


Neznaika   (2005-02-16 11:49:00) [16]

Уважаемый Johnmen © Вы либо шутите, либо никогда не встречали программ, в окне настроек которых, можно поставить галочку -"Поверх всех окон". Чего я собственно и хочу сделать...
И еще встречаются, галочки - "Поверх скринсейвера"...тоже не плохо-бы узнать КАК?


msguns   (2005-02-16 11:48:00) [17]

>Johnmen ©   (16.02.05 11:45) [3]
>Тогда никак.

Зачем же так категорично ?


Johnmen   (2005-02-16 11:45:00) [18]

>Neznaika ©   (16.02.05 11:17) [2]
>поверх всех

Тогда никак. Потому, что может найтись окно, которое захочет того же.


Neznaika   (2005-02-16 11:17:00) [19]

>>Johnmen ©   (16.02.05 11:14) [1]
>>Поверх каких именно окон ?

поверх всех

>>Почему не третью ?
да хоть и третью,,, лишь бы не главную...


Johnmen   (2005-02-16 11:14:00) [20]

Поверх каких именно окон ?
Почему не третью ?


Наверх

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