Главная страница
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.034 c
9-1064135653
Still_Swamp
2003-09-21 13:14
2004.04.18
Поделитесь в меру шустрым алгоритмом размытия растра.


1-1080881797
dim-
2004-04-02 08:56
2004.04.18
Поиск текста в Ворде


1-1080545502
npr2
2004-03-29 11:31
2004.04.18
dbgrid


1-1080657541
Noway
2004-03-30 18:39
2004.04.18
задержка


1-1080818442
ruslan
2004-04-01 15:20
2004.04.18
меню в режиме runtime