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

Вниз

Окно в качестве фона   Найти похожие ветки 

 
xobbit   (2004-03-08 22:47) [0]

Подскажите пожалуйста, можно ли сделать, чтоб окно постоянно было в  фоне и не перекрывало собой других окон ,как по нему не кликай?


 
YurikGl ©   (2004-03-08 22:53) [1]

FormMaim.FormStyle:=fsMDIForm
остальные := fsMDIChild


 
xobbit   (2004-03-08 23:03) [2]

Да, но это в случае окон одной программы.. А как сделать окно фоновым для всех? - вроде эдакого рабочего стола..


 
YurikGl ©   (2004-03-08 23:30) [3]

Можешь подменить рабочий стол ActiveX компонентом. Был такой вирус, который запихивал в папки файл с каким-то расширением (каким не помню). Он (файл) обеспечивал фон папки. Может из мастеров кто подскажет.
З.Ы. Вирус, кроме фона еще и комп вешал.


 
xobbit   (2004-03-09 03:29) [4]

Нашел следующий вариант:
"Для этого достаточно висеть на WM_ACTIVATE и при активации окна помещать последнее вниз Z-order"а:

SetWindowPos(
Handle, // здесь указать хэндл окна формы
HWND_BOTTOM,
0, 0, 0, 0,
SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE or SWP_NOREDRAW);
",
но он почему-то не работает :( В чем может быть загвоздка?


 
Юрий Зотов ©   (2004-03-09 09:07) [5]

type
 TForm1 = class(TForm)
   procedure FormShow(Sender: TObject); // OnShow
 private
   FFlag: boolean;
   procedure WMWindowPosChanging(var Message: TWMWindowPosChanging); message WM_WINDOWPOSCHANGING;
 end;

procedure TForm1.WMWindowPosChanging(var Message: TWMWindowPosChanging);
begin
 if FFlag then with Message.WindowPos^ do
   flags := flags or SWP_NOZORDER;
 inherited
end;

procedure TForm1.FormShow(Sender: TObject); // OnShow
begin
 SetWindowPos(Handle, HWND_BOTTOM, Left, Top, Width, Height,
   SWP_NOACTIVATE or SWP_SHOWWINDOW);
 FFlag := True
end;


 
xobbit   (2004-03-10 01:03) [6]

С последним вариантом все вполне получилось, хотя вылез такой глюк:
Окна которые я хочу свернуть не сворачиваются, а просто теряют фокус. Вот.. Где копать?



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

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

Наверх




Память: 0.47 MB
Время: 0.074 c
4-1071312016
Stefan
2003-12-13 13:40
2004.03.28
Как получить дескриптор окна, если известен ТОЛЬКО его идентифика


14-1077797424
Иван Бездомный
2004-02-26 15:10
2004.03.28
Забавно


9-1060290914
K.o.Z
2003-08-08 01:15
2004.03.28
Console


14-1077994366
Lena
2004-02-28 21:52
2004.03.28
<B>Delphi</B>


6-1074066383
Kolian
2004-01-14 10:46
2004.03.28
соединение Lpt-Lpt