Процедура
| Код | Procedure Change; const Desktop: TGuid='{75048700-EF1F-11D0-9888-006097DEACF9}'; var ActiveDeskTop:IActiveDesktop; begin ActiveDesktop:=CreateComObject(Desktop) as IActiveDesktop; ActiveDesktop.SetWallpaper(StringToOleStr(Form1.FilePach.Caption),WPP); ActiveDesktop.ApplyChanges(AD_APPLY_ALL); end;
|
(WPP:=RadioGroup1.ItemIndex[0,1,2]) не изменяет позицию рисунка на экране , т.е не изменяет параметры реестра TileWallpaper на "0" или "1" и не имеет доступа к параметру WallpaperStyle Вопрос: возможно ли через такую процедуру получить доступ к этим параметрам или нужно использовать конструкции типа:
| Код | var Reg: TRegIniFile; begin Reg := TRegIniFile.Create('Control Panel'); Reg.WriteString('desktop', 'Wallpaper', 'c:\windows\mybmp.bmp'); Reg.WriteString('desktop', 'TileWallpaper', '1'); Reg.Free; SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil, SPIF_SENDWININICHANGE); end
|
|