永发信息网

VC中如何用代码设置桌面背景为拉伸或者平铺

答案:2  悬赏:0  手机版
解决时间 2021-04-06 21:17
  • 提问者网友:夢醒日落
  • 2021-04-06 15:29
我用函数SystemParametersInfo(SPI_SETDESKWALLPAPER,TRUE,(LPVOID)(LPCWSTR)szPath, SPIF_SENDWININICHANGE|SPIF_UPDATEINIFILE); 来设置桌面背景,不过,它是居中的。
原因是我的电脑分辨率是1440*900,而我的图片则是比分辨率小,所以桌面边沿有空隙,我想让图片铺满全屏,该如何设置呢?

经过网上查找,自己找到了答案。不过还是很感谢bhtzu的回答。
// 设置墙纸风格
WALLPAPEROPT wp = {0};
wp.dwSize = sizeof(WALLPAPEROPT);
wp.dwStyle |= WPSTYLE_STRETCH;//拉伸 核心是这段
hr = pIAD->SetWallpaperOptions(&wp, 0);
...
SetWallpaper
ApplyChanges
百度的字数不允许全贴上,所以就只贴核心的。
最佳答案
  • 五星知识达人网友:像个废品
  • 2021-04-06 16:38
SystemParametersInfo调用之前,在写注册表的时候,WallPager是文件名,还要写一个项:WallPagerStyle,这个项目的值代表一下意义:
修正一下,是两个值
//       TileWallpaper    WallPaperStyle
//居中       0                 0          (默认值)
//平铺       1                 0
//拉伸       0                 2
全部回答
  • 1楼网友:动情书生
  • 2021-04-06 18:11
期待看到有用的回答!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯