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

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



Память: 0.45 MB
Время: 0.015 c
1-25323
Андрю-ХА
2003-12-22 13:37
2004.01.09
OwnerDraw StatusBar


9-25168
Asrw
2003-06-05 21:41
2004.01.09
Сохранение в игре


3-25253
ShadowSmart
2003-12-10 14:22
2004.01.09
Сжатие *.mdb через ADO


3-25203
loki128
2003-12-12 16:46
2004.01.09
Считать значения полей записи


7-25629
*FoX*
2003-10-26 17:56
2004.01.09
Интерфейс




   Наверх