先下载一个gif图片,这里提供一个gif图片示例

在线GIF图片帧拆分工具 - UU在线工具 (uutool.cn)

使用这个网站将gif切成单张图片

创建一个Avalonia MVVM的项目,将图片copy进去

在项目文件中添加一下代码:

    <ItemGroup>
<None Update="gif\*.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>

修改App.axaml.cs代码

public partial class App : Application
{
private static TrayIcon NotifyIcon; public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
} public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
desktop.MainWindow = new MainWindow
{
DataContext = new MainWindowViewModel(),
};
}
InitializeLogo(); base.OnFrameworkInitializationCompleted();
} private static void InitializeLogo()
{
// 初始化Icon
NotifyIcon = new TrayIcon(); // 初始图片
var size = 1;
_ = Task.Run(async () =>
{
while (true)
{
// 添加托盘图标,
await Dispatcher.UIThread.InvokeAsync(() =>
{
using var stream =
File.OpenRead(Path.Combine(AppContext.BaseDirectory, "gif", $"{size++}.png"));
// 定义图片的总数,达到总数从1开始继续循环
if (size == 151)
{
size = 1;
} return NotifyIcon.Icon =
new WindowIcon(stream);
});
// 修改动态渲染速度
await Task.Delay(40);
}
});
NotifyIcon.ToolTipText = "Logo动图测试";
NotifyIcon.IsVisible = true;
}
}

执行项目,效果如图

简单实现托盘动图,你也可以使用更好的图片,这个动图不太专业可能显示不太好看

来着token的分享

最新文章

  1. EntityFramework 7 开发纪录
  2. 微信公众平台教程和SDK收集
  3. iOS.AppThinning-iOS9-new-feature-for-app-thinning-bitcode-odr-slicing
  4. 获取发布版SHA1获取
  5. 通用权限管理系统Ver2.0
  6. (原)python中matplot中获得鼠标点击的位置及显示灰度图像
  7. php 大转盘抽奖
  8. Unity 容器教程
  9. Python正则表达式返回首次匹配到的字符及查询的健壮性
  10. 01_Linux学习_基础知识
  11. python之__call__()
  12. pyhton 爬虫爬去吾爱精品软件的信息并写入excel
  13. python 基础5 初级函数
  14. PAT-L2-007 家庭房产 (union-find) 小数据 没有什么是暴力解决不了的!!
  15. LeetCode - Two Sum IV - Input is a BST
  16. [PHP]将回调函数作用到给定数组的单元上
  17. 【Android API】Android 4.1 API官方文档详解
  18. redis过期回调以及键空间通知
  19. Git中特别的命令
  20. webpy 模版语言

热门文章

  1. 【YOLOv5】手把手教你使用LabVIEW ONNX Runtime部署 TensorRT加速,实现YOLOv5实时物体识别(含源码)
  2. 如何在CentOS7上搭建自己的GitLab仓库
  3. JavaWeb3
  4. Git 分支管理策略汇总
  5. 如何重启kafka
  6. mysql忽略大小写配置
  7. FIT软件开发
  8. mindxdl---common--test_tools.go
  9. uwsgi 启动配置文件
  10. C#微信公众号关注二维码生成、密文方式