Pystray 系统托盘图标

Jak*_*áha 5 python systray

我想pystray在 python 中使用模块在 Windows 上创建一个系统托盘应用程序。直到现在我设法写了这个:

import pystray
from PIL import Image

image = Image.open("image.gif")
icon = pystray.Icon(name ="SPAM!", icon =image, title ="MOBASuite", menu =None)
icon.run()
Run Code Online (Sandbox Code Playgroud)

我很难弄清楚这是如何工作的。它在文档中没有明确解释。

右键单击图标后如何创建菜单以及如何将项目添加到菜单并设置默认项目,如果我用左键单击图标应该调用该菜单。以及如何更新图标?如果我运行此程序,则会创建 3 个图标,并且必须将鼠标悬停在它们上方以成为一个图标。当我关闭程序时,同样的事情。

Seb*_*inc 8

from pystray import MenuItem as item
import pystray
from PIL import Image

def action():
    pass

image = Image.open("image.jpg")
menu = (item('name', action), item('name', action))
icon = pystray.Icon("name", image, "title", menu)
icon.run()
Run Code Online (Sandbox Code Playgroud)

这对我有用

我推荐使用 lambda 来调用一个方法

item('Call something', lambda :  method())
Run Code Online (Sandbox Code Playgroud)