zoukankan      html  css  js  c++  java
  • 【Win10应用开发】自定义桌面壁纸

    调用通用的API来设置桌面壁纸,是一件既简单又有趣的事情,结合XAML可以生成图像的特性,你甚至可以做一个应用,让用户用他所拍的照片做成一张自定义壁纸,然后作为桌面壁纸。

    这个API是通用的,应用运行在任意Windows设备上都能使用,当然包括手机。在Windows.System.UserProfile命名空间下,有一个叫UserProfilePersonalizationSettings的类,它可以修改锁屏壁纸和桌面壁纸,调用后会返回bool值,如果成功就是true,如果人品不佳就返回false。

    在调用UserProfilePersonalizationSettings类前,先访问一下IsSupported方法,看看是否支持该操作。然后通过Current属性可以获取到一个UserProfilePersonalizationSettings实例,之后你就可以设置壁纸了。

    调用TrySetLockScreenImageAsync方法设置锁屏壁纸,调用TrySetWallpaperImageAsync方法可以设置桌面壁纸,参数都是用来作为背景的图片文件的StorageFile。

    从这也看到,用起来真的很简单,给你看个例子:

                // 设置壁纸
                if (!UserProfilePersonalizationSettings.IsSupported())
                {
                    msgbox.Content = "人品问题,不支持的操作。";
                    await msgbox.ShowAsync();
                    return;
                }
                UserProfilePersonalizationSettings settings = UserProfilePersonalizationSettings.Current;
                bool b = await settings.TrySetWallpaperImageAsync(file);
                if (b)
                {
                    msgbox.Content = "设置成功。";
                }
                else
                {
                    msgbox.Content = "操作失败。";
                }

    看看效果吧。在PC上运行是这样的。

    在手机上运行是这样的。

    然后以设置手机桌面壁纸为例,修改壁纸后的开始屏幕是这样的。

    如何,是不是很简单呢。

    示例下载地址:http://files.cnblogs.com/files/tcjiaan/CustomWallpage.zip

  • 相关阅读:
    转:va_list、va_start、va_arg、va_end的原理与使用
    学习Docker的记录
    Google Code 优秀的开源工具
    转载(程序在内存中运行的奥秘)
    C# 和 Java 之争之我见
    揭秘ASP.NET 2.0的Eval方法(转)
    IIS6.0 架构(二)
    IE6 position:fixed bug (固定窗口方法)(转载)
    用FileStream上传图片转换成二进制,在本地用行,传到服务器上去出现如下错误
    异常处理
  • 原文地址:https://www.cnblogs.com/tcjiaan/p/4717576.html
Copyright © 2011-2022 走看看