编程实现Windows和Ubuntu桌面背景/壁纸的设置
摘要:本人对桌面背景的要求相对较高,而且希望能每天更换,但又觉得常规步骤太过麻烦(从网上找图片->下载至本地->打开本地路径->右键设为壁纸),所以想要写一个程序自动实现其全部过程。(从网上爬取图片的实现在其他文章另有介绍)(文末附github链接)
为了能够通过程序实现后半部分功能,即设置本地目录下的图片为壁纸,特此查找到了windows系统下的相关API函数。另外由于本人还常使用Ubuntu系统,于是就将程序跨平台地扩展至了该系统,大体上的实现方法就是调用了一个SHELL文件。两系统的具体实现详见下文。
本人亲测平台: Win10,Ubuntu16.04LTS
运行环境:Qt5.7.0
Windows
调用API函数:SystemParametersInfo。该函数含有4个参数,只需更改第1项和第3项参数,分别为桌面壁纸标志SPI_SETDESKWALLPAPER和壁纸的本地存储路径filename。
#include <windows.h>
void WallPaper::setWallPaper(QString filePath)
{
const