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

Вниз

Фон рабочего стола - динамическое изменение   Найти похожие ветки 

 
Vcoder ©   (2005-08-22 22:47) [0]

Здравствуйте, Мастера!

Есть такая задумка - сформировать изображение в памяти (например в TBitmap), а затем сделать его рисунком рабочего стола, не сохраняя в файл. Понятно, что это до первой перезагрузки - больше и не надо. Вопрос в том, как вообще это реализовать.

Пробовал код:

procedure DrawOnDesktop;
var
 h : THandle;
 DC : HDC;
begin
 h := FindWindow("ProgMan", "Program Manager");
 h := GetWindow(h, GW_CHILD);
 DC:=GetDC(h);
 if DC=0 then exit;
 try
   ...
   // Рисуем на DC, используя API функции,
   // например SetPixel
   ...
 finally
   ReleaseDC(h, DC);
 end;// try
end;// procedure DrawOnDesktop


Работает через раз, но рисует на поверхности рабочего стола, причем закрашивает даже иконки. Но полученный рисунок стирается любым окном - проявляется предыдущий фон.

Кстати, если взять

GetDC(0);

то закрашивается ВЕСЬ ЭКРАН. Правда, с тем же результатом...

Итак, возможно ли сделать как я хочу - поменять рисунок фона на сеанс, не сохраняя его на диск? И если да, то как?


 
Eraser ©   (2005-08-22 22:58) [1]

Vcoder ©   (22.08.05 22:47)

На диск сохранять всё таки прийдётся... а в чём проблема то? Сохраняй во временные файлы к примеру, а потом удаляй.

Или "вирус" пишем? )


 
Vcoder ©   (2005-08-22 23:04) [2]

Не, не вирус. Вирус - он размножается.

Помнится, была как-то програмка, делающая фон рабочего стола анимированным. Вроде даже видео можно было туда воспроизводить. Вот играясь с примером плазмы и подумал - а здорово бы сделать чтобы этот рисунок выводился на рабочий стол и менялся периодически.


 
Zeqfreed ©   (2005-08-22 23:53) [3]

Vcoder ©   (22.08.05 22:47)
Материал к размышлению:
http://www.delphimaster.ru/articles/directx/index.html

Думаю, ещё как вариант можно рассмотреть ActiveX-элемент на рабочем столе.


 
XProger ©   (2005-08-23 07:59) [4]

gif ставь ;)



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

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

Наверх




Память: 0.48 MB
Время: 0.055 c
2-1137496064
file
2006-01-17 14:07
2006.02.05
удалить часть файла


15-1137489290
Некто
2006-01-17 12:14
2006.02.05
Корпоративная ICQ


2-1137512430
Virtukon
2006-01-17 18:40
2006.02.05
Ускорение процесса добавления текста в TStrings


15-1137130807
begin...end
2006-01-13 08:40
2006.02.05
С Днём рождения! 13 января


8-1124787106
vince
2005-08-23 12:51
2006.02.05
Зеркальное отображение растра