![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Окно сзади
Unknown © (2005-01-28 00:07:00)Кто-нибудь знает как сделать чтобы мое окно всегда было сзади других? Пример: Оболочка Aston или сам Explorer.
alpet (2005-01-28 14:39:00) [1]У меня получалось прилеплять к рабочему стола Explorer свои компоненты.
Код примерно такой (не должно быть лишних окон на столе):
hwnd := WindowFromPoint (0, 0); // List View с значками
SetParent (memo1.handle, hwnd);
grom (2005-01-28 13:12:00) [2]SendMessage (Handle, WM_Syscommand, $F040, 0);
Gero (2005-01-28 10:48:00) [3]
> DVM © (28.01.05 10:15)
Очень жду.
DVM (2005-01-28 10:15:00) [4]
> Gero © (28.01.05 10:12) [3]
Я даже писать начал. Но времени нетуууу. :( Надеюсь сделаю когда нибудь.
Gero (2005-01-28 10:12:00) [5]
> DVM © (28.01.05 10:07)
офф:
Кто-то когда-то статью обещал…
DVM (2005-01-28 10:07:00) [6]SetShellWindow()
1) Будет работать только если нет других окон вызвавших эту функцию раньше твоего.
2) С VCL окнами не работает почему-то. Наверняка можно заставить работать.
3) Эксплорер пользуется именно этой функцией.
-SeM- (2005-01-28 09:36:00) [7]Решение от MetalFan © (31.03.04 19:05)
....
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;