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

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



Память: 0.46 MB
Время: 0.02 c
1-1080597988
KyRo
2004-03-30 02:06
2004.04.18
Типизированиык файлы


6-1076419526
Павел
2004-02-10 16:25
2004.04.18
WinSocket, Proxy серверы и чат...


3-1080119640
griff
2004-03-24 12:14
2004.04.18
16 цветов


3-1079597149
sohat
2004-03-18 11:05
2004.04.18
Как оформить запрос к двум базам через BDE ?


3-1080059869
neVIP
2004-03-23 19:37
2004.04.18
Маркировка ячйки DBGrid




   Наверх