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

Вниз

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

 
Virus   (2003-09-09 11:00) [0]

Меняю фон(картинку) на рабочем столе вот этой процедурой:
SystemParametersInfo(SPI_SETDESKWALLPAPER,0,PChar("имя файл"),
SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE );

Если файл bmp-шный, то при вызове этой строки На рабочем столе сразу меняется картинка. А вот если JPEG, То С виду ничего не происходит, хотя если посмотреть в реестре, то там уже картинка сменена. т.е. если комп перегрузить, то появится на раб. столе уже новая.


 
ZEE ©   (2003-09-09 11:20) [1]

как вариант - можно после этого обновить рабочий стол
например так:
ShellExecute(Application.Handle,
Pchar("Open"),Pchar("C:\Winsdows\Rundll32.exe"),
Pchar("user,repaintscreen"),
Pchar("C:\Winsdows\"),SW_SHOWNORMAL);
или если с BMP - все ОК, то можно преобразовать в Битмап, ну и дальше понятно...


 
Virus   (2003-09-09 11:57) [2]

>>или если с BMP - все ОК, то можно преобразовать в Битмап, ну и дальше понятно...
Этот вариант я тоже просматривал. Он мне даже больше нравится. Но проблема в том, как преобразовать в битмап.


 
ZEE ©   (2003-09-09 12:15) [3]

var
bmp:TBitMap;
jpg: TJpegImage;
...
bmp:=TBitMap.Create;
jpg:=TJpegImage.Create;
jpg.LoadFromFile("...");
bmp.Width:=jpg.Width;
bmp.Height:=jpg.Height;
bmp.Canvas.Draw(0,0,jpg);
bmp.SaveToFile("...");
jpg.Free;
bmp.Free;



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
1-25431
ORMADA
2003-12-23 10:12
2004.01.09
Консоль


1-25373
Indy
2003-12-25 04:45
2004.01.09
Документация по Indy


14-25522
Igorek
2003-12-18 13:09
2004.01.09
Прикольная задача с РСДН - 5 пиратов


14-25550
deema
2003-12-18 13:41
2004.01.09
МИСТИКА!!!???


11-25272
vostrjakov
2003-04-17 15:41
2004.01.09
перехват приложением сообщения WM_COPYDATA в KOL