Форум: "Основная";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];
ВнизStayOnTop Найти похожие ветки
← →
Neznaika © (2005-02-16 11:12) [0]Подскажите что-нибудь для того чтобы сделать вторую форму поверх всех окон.
З.Ы. С первой (главной формой)все ОК.
← →
Johnmen © (2005-02-16 11:14) [1]Поверх каких именно окон ?
Почему не третью ?
← →
Neznaika © (2005-02-16 11:17) [2]>>Johnmen © (16.02.05 11:14) [1]
>>Поверх каких именно окон ?
поверх всех
>>Почему не третью ?
да хоть и третью,,, лишь бы не главную...
← →
Johnmen © (2005-02-16 11:45) [3]>Neznaika © (16.02.05 11:17) [2]
>поверх всех
Тогда никак. Потому, что может найтись окно, которое захочет того же.
← →
msguns © (2005-02-16 11:48) [4]>Johnmen © (16.02.05 11:45) [3]
>Тогда никак.
Зачем же так категорично ?
← →
Neznaika © (2005-02-16 11:49) [5]Уважаемый Johnmen © Вы либо шутите, либо никогда не встречали программ, в окне настроек которых, можно поставить галочку -"Поверх всех окон". Чего я собственно и хочу сделать...
И еще встречаются, галочки - "Поверх скринсейвера"...тоже не плохо-бы узнать КАК?
← →
DVM © (2005-02-16 11:54) [6]
> Уважаемый Johnmen © Вы либо шутите, либо никогда не встречали
> программ, в окне настроек которых, можно поставить галочку
> -"Поверх всех окон". Чего я собственно и хочу сделать...
Это невозможно в принципе. Доказательство очень простое: что будет с двумя копиями одной и той же программы, окна которой "поверх всех". Обе будут поверх друг друга?
Ниже всех можно, выше абсолютно нет!
← →
DVM © (2005-02-16 11:56) [7]Частичное решение проблемы SetWindowPos вкупе с WM_WINDOWPOSCHANGING
← →
Johnmen © (2005-02-16 12:04) [8]>Neznaika © (16.02.05 11:49) [5]
Я не шучу и не надо наездов...
← →
TUser © (2005-02-16 12:07) [9]
> Ниже всех можно, выше абсолютно нет!
Ниже нельзя по той же самойпричине
← →
DVM © (2005-02-16 12:09) [10]
> Ниже нельзя по той же самойпричине
можно
← →
Neznaika © (2005-02-16 12:29) [11]>>Я не шучу и не надо наездов...
я и не наезжаю...
Просто хочу выяснить как это сделать...
Люди ведь делают как-то?...
Не зря же придумали StayOnTop, пусть даже для его полноценной работы надо дописать пару строк, к тому же известны методы как это сделать для главной формы...
Может я ошибаюсь на счет - выше всех окон, но как сделать "как можно выше" ...
← →
Johnmen © (2005-02-16 12:52) [12]Это другое дело, когда не говорим о всех. Напр. так:
В 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:54) [13]Не хотите ли Вы сказать, что это не реально?
← →
Johnmen © (2005-02-16 12:58) [14]Что "это" ?
← →
Neznaika © (2005-02-16 12:59) [15]Johnmen © (16.02.05 12:52) [12] извини не дождался твоего ответа...
Этот метод мне известен, он работает только для "главной" формы...
А как на счет второй?
З.Ы. Если я не правильно подбираю формулировку для "второй формы", обясню: File|New|Application, а затем File|New|Form, так вот эту вторую форму надо и вытащить как можно выше...
← →
Neznaika © (2005-02-16 13:24) [16]UP UP UP
← →
Neznaika © (2005-02-16 13:45) [17]Ну как же быть мастера???
← →
Johnmen © (2005-02-16 13:57) [18]М.б. тебя так устроит ?
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;
← →
Anatoly Podgoretsky © (2005-02-16 14:02) [19]Neznaika © (16.02.05 13:45) [17]
Ну уже же сказали, выше всех нельзя - есть и другие желающие. Можно выше в всех в отдельно взятый период, оно и работает.
← →
Neznaika © (2005-02-16 14:11) [20]Johnmen © (16.02.05 13:57) [18]
спасибо попробую, правда сечас делфи под рукой нету...:)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.034 c