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

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



Память: 0.46 MB
Время: 0.034 c
6-1073649790
Iks
2004-01-09 15:03
2004.03.28
Как отправить звук от микрофона по сети


1-1078918515
pasha_golub
2004-03-10 14:35
2004.03.28
Не найду константу


1-1078839959
Term
2004-03-09 16:45
2004.03.28
Как округлить число с точностью до 2-х знаков после запятой?


8-1069102281
Aleksey_
2003-11-17 23:51
2004.03.28
Мерцание рисунка


3-1077192498
sherminator
2004-02-19 15:08
2004.03.28
множественный поиск




   Наверх