Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
15-1195624129
GhosTer
2007-11-21 08:48
2007.12.23
Вопрос туп до невозможности, но все таки помогите.


2-1196223138
Мистик
2007-11-28 07:12
2007.12.23
сmd на внутри программы


4-1176447569
Dmitry_177
2007-04-13 10:59
2007.12.23
Перевести SYSTEMTIME в строку


1-1191421712
ggg
2007-10-03 18:28
2007.12.23
Недостаточно памяти для обработки команды.


2-1195909606
Servelat
2007-11-24 16:06
2007.12.23
Приведение типов




   Наверх