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

Вниз

fsStayOnTop только наоборот :)   Найти похожие ветки 

 
[BAD]Angel ©   (2004-03-31 18:24) [0]

Уважаемые мастера!
Не могли бы Вы подсказать мне след.:

Допустим:
Есть некая форма, которую надо поместить поверх десктопа, но не выше других открывающихся окон (или открытых). Т.е надо чтобы моя форма была ниже всех остальных, даже когда я с ней работаю... нажимаю на ней кнопки, перемещаю ее и т.д.

Подскажите механизм или идею, как это реализовать!
Буду очень признателен.


 
MetalFan ©   (2004-03-31 19:05) [1]


....
procedure WndProc(var Message:TMessage); override;
....
procedure TForm1.WndProc(var Message: TMessage);
begin
 if Message.Msg = WM_WINDOWPOSCHANGING THEN
 begin
   PWindowPos(Message.LParam)^.hwndInsertAfter:=HWND_BOTTOM;
 end;
 inherited;
end;


 
[BAD]Angel ©   (2004-03-31 19:25) [2]

Огромное спасибо!
Я бы не догадался так сделать :)


 
MetalFan ©   (2004-03-31 19:46) [3]

можно просто через отлов сообщения WM_WINDOWPOSCHANGING


 
[BAD]Angel ©   (2004-03-31 19:51) [4]

объясни мне ПЛЗ значения overide и inherited потолковее желательно. По английской справе не очень понятно :)


 
Piter ©   (2004-03-31 19:53) [5]

[BAD]Angel (31.03.04 18:24)
Т.е надо чтобы моя форма была ниже всех остальных, даже когда я с ней работаю... нажимаю на ней кнопки, перемещаю ее и т.д


Зачем тебе надо это? Такое невозможно...


 
[BAD]Angel ©   (2004-03-31 20:04) [6]

Piter
Зачем надо не сказу :) Просто пытаюсь написать небольшую прогу :)
А это возможно... посмотри как сделал MetalFan

Работать с формой возможно, даже когда она спрятана за всеми другими открытыми окнами... используя хотябы кнопку TAB перемещаясь по эллементам формы. Вот!


 
ЮЮ ©   (2004-04-01 03:28) [7]

overide - перекрываешь метод предка (TForm, в тоем случае) inherited - выполняешь перекрытый метод предка


 
DVM ©   (2004-04-01 19:59) [8]


> Piter ©   (31.03.04 19:53) [5]
> [BAD]Angel (31.03.04 18:24)
> Т.е надо чтобы моя форма была ниже всех остальных, даже
> когда я с ней работаю... нажимаю на ней кнопки, перемещаю
> ее и т.д
>
> Зачем тебе надо это? Такое невозможно...

Возможно еще как. Правда для этого надо стать оболочкой. SetShellWindow() расположит окно ниже всех и никами способами его не удасться оттуда достать.



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

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

Наверх




Память: 0.48 MB
Время: 0.028 c
11-1061462101
Экселенц
2003-08-21 14:35
2004.04.18
free pascal


3-1079534042
stelius
2004-03-17 17:34
2004.04.18
Transaction


9-1066138943
MadWand
2003-10-14 17:42
2004.04.18
Пощь бы начинающему чайнику %)


1-1080387964
KSergey
2004-03-27 14:46
2004.04.18
Как определить чего рисовать в OnPaint?


1-1080434014
Dimedroll
2004-03-28 04:33
2004.04.18
-= Можно ли все Error ловить своей проги посредством WinAPI =-