Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.12.23;
Скачать: CL | DM;

Вниз

Окна всегда поверх всех окон   Найти похожие ветки 

 
roughneck   (2007-11-28 09:51) [0]

Создаю ряд окон способом:
 ArrayForm: array of TForm1;
 ArrayForm[i] := TForm1.Create(Application);

Проблема сделать эти окна всегда поверх других окон. Как, например, окно трафика у Download Master-а.


 
авыф   (2007-11-28 10:07) [1]

FormStyle := fsStayOnTop


 
Anatoly Podgoretsky ©   (2007-11-28 11:54) [2]

Убери слова ВСЕГДА тогда сможешь на что то расчитывать.


 
roughneck   (2007-11-29 14:46) [3]

FormStyle := fsStayOnTop
не помогает - это работает только в пределах данного процесса.

А вот по поводу ВСЕГДА - не уберу. Мне и нужно чтоб окно было видно всегда. Исключением мугут быть игры или другие проги которые работают с видео страницами (DirectX)

Пока сдлал вот так - работает, но это как-то не корректно:
по таймеру выполняю:
 Application.NormalizeTopMosts;
 if Length(ArrForms) > 0 then
   SetWindowPos(ArrForms[0].Handle, HWND_TOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
 i := 1;
 while i < Length(ArrForms) do
 begin
   SetWindowPos(ArrForms[i].Handle, ArrForms[i-1].Handle, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
   i := i + 1;
 end;


 
Anatoly Podgoretsky ©   (2007-11-29 15:31) [4]

Твоя программа может запускаться в двух экземпляров, как тогда ты обойдешь данное противоречие?
А если у другой программы точно такие же претензии, то как.

Лечение - вешаться.


 
Strate   (2007-11-30 07:54) [5]

roughneck   (29.11.07 14:46) [3]
SetWindowPos(ArrForms[i].Handle, ArrForms[i-1].Handle....


Может всёже

SetWindowPos(ArrForms[i].Handle, HWND_TOPMOST,....?


 
DVM ©   (2007-12-01 21:12) [6]


> roughneck

Выше всех только менюшка монитора.
Выше нее - окно распечатанное на принтере.



Страницы: 1 вся ветка

Текущий архив: 2007.12.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
2-1196581120
Новый
2007-12-02 10:38
2007.12.23
конвертация DBF -> Oracle


15-1195807851
toto
2007-11-23 11:50
2007.12.23
Письмо деду Морозу


2-1196316222
uno
2007-11-29 09:03
2007.12.23
Запись сообщения в таблице


15-1196144491
chem
2007-11-27 09:21
2007.12.23
Экспертная система (Химия)


2-1196590346
hoza-roma
2007-12-02 13:12
2007.12.23
Как добавить свой пункт меню в контекстое меню Windows?