python-在系统托盘显示CPU使用率和内存使用率

一、添加轮子

1.添加托盘区图标库 infi.systray

from infi.systray import SysTrayIcon

2.添加图像处理库 Pillow

from PIL import Image, ImageDraw, ImageFont

3.添加 psutil 来获取CPU、内存信息

import psutil

二、完整代码

from infi.systray import SysTrayIcon
from PIL import Image, ImageDraw, ImageFont
import time
import psutilimage = "main.ico"
initialStart = True
systray = SysTrayIcon(image, "CPU/MEM")while True:img = Image.new('RGBA', (50, 50), color=(255, 255, 255, 100))d = ImageDraw.Draw(img)d.rectangle((0, 25, 50, 50), fill=(39, 112, 229), outline=None)font_type = ImageFont.truetype("arial.ttf", 25)a = psutil.cpu_percent(interval=1, percpu=False)b = psutil.virtual_memory().percentd.text((0, 0), f"{a}\n{b}", fill=(255, 255, 255), font=font_type)img.save(image)if initialStart:systray.start()initialStart = Falseelse:systray.update(icon=image)time.sleep(0.5)

三、实际效果展示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/161057.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个很不错的开源图像库 Graphics32

Graphics32 是一个很不错的开源图像库。通过调试和跟踪Graphics32 的代码,可以快速的熟悉图像处理的一些知识。例外Graphics32有着很不错的性能。在不使用DirectX的情况下能达到一个惊人的速度,可以作为一个简单的2D引擎来使用,就功能上讲比那…

如何使用Selenium处理Cookie,今天彻底学会了

01 cookie介绍 HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接,这就意味着服务器无法从连接上跟踪会话。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求…

MyBatis实现多表映射、分页显示、逆向工程

目录 一、MyBatis实现多表映射 1.1 实体类设计 1.2 一对一关系实现案例 1.3 对多配置实现案例 1.4 设置自动映射与n张表关联映射 二、MyBatis实现分页功能 2.1 mybatis插件工作原理 2.2 引入插件与插件的使用 三、逆向工程插件 3.1 什么是逆向工程 3.2 MyBat…

web前端——HTML+CSS实现奥运五环

web前端——HTMLCSS实现奥运五环 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</titl…

“我“何去何从?2024年软件测试职业发展方向?运筹帷幄方能决胜千里之外...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 测试的职责无非就…

C++中的多态

C中的多态 一、概念二、虚函数1、概念2、重写&#xff08;覆盖&#xff09;3、重载、覆盖&#xff08;重写&#xff09;、隐藏&#xff08;重定义&#xff09;的对比&#xff08;1&#xff09;重载&#xff08;2&#xff09;重写&#xff08;覆盖&#xff09;&#xff08;3&…

【C++】set和multiset

文章目录 关联式容器键值对一、set介绍二、set的使用multiset 关联式容器 STL中的部分容器&#xff0c;比如&#xff1a;vector、list、deque、forward_list(C11)等&#xff0c;这些容器统称为序列式容器&#xff0c;因为其底层为线性序列的数据结构&#xff0c;里面存储的是元…

SpringBoot 将 jar 包和 lib 依赖分离,dockerfile 构建镜像

前言 Spring Boot 是一个非常流行的 Java 开发框架&#xff0c;它提供了很多便利的功能&#xff0c;例如自动配置、快速开发等等。 在使用 Spring Boot 进行开发时&#xff0c;我们通常会使用 Maven 或 Gradle 进行项目构建。 本文将为您介绍如何使用 Maven 将 Spring Boot …

OSError: libomp.so: cannot open shared object file: No such file or directory

报错&#xff1a;OSError: libomp.so: cannot open shared object file: No such file or directory https://stackoverflow.com/questions/52401840/what-is-the-ctypes-cdll-default-path 没有libomp.so 总算找到啦&#xff01;链接 export LD_LIBRARY_PATH/usr/lib/llvm…

LangChain+LLM实战---实用Prompt工程讲解

原文&#xff1a;Practical Prompt Engineering 注&#xff1a;本文中&#xff0c;提示和prompt几乎是等效的。 这是一篇非常全面介绍Prompt的文章&#xff0c;包括prompt作用于大模型的一些内在机制&#xff0c;和prompt可以如何对大模型进行“微调”。讲清楚了我们常常听到的…

七月论文审稿GPT第二版:从Meta Nougat、GPT4审稿到LongLora版LLaMA、Mistral

前言 如此前这篇文章《学术论文GPT的源码解读与微调&#xff1a;从chatpaper、gpt_academic到七月论文审稿GPT》中的第三部分所述&#xff0c;对于论文的摘要/总结、对话、翻译、语法检查而言&#xff0c;市面上的学术论文GPT的效果虽暂未有多好&#xff0c;可至少还过得去&am…

《算法通关村—迭代实现二叉树的前序遍历》

《算法通关村—迭代实现二叉树的前序遍历》 利用递归进行二叉树的前序遍历是非常容易的几行代码就能解决。但是你知道如何用迭代实现吗&#xff1f; 理论上来说能够用递归解决的都能用迭代解决&#xff0c;我们就来试试用迭代解决二叉树的前序遍历问题吧。 什么是前序遍历&a…