小编Osh*_*her的帖子

一起运行 Tkinter 窗口和 PysTray 图标

我正在构建一个 tkinter gui 项目,并且正在寻找使用 tkinter 窗口运行托盘图标的方法。
我发现 Pystray 库可以做到这一点,但是现在我想弄清楚如何将这个库(托盘图标)与 tkinter 窗口一起使用,
我在用户退出 winodw 时进行了设置,它只会退出窗口:
self.protocol('WM_DELETE_WINDOW', self.withdraw)
我想用托盘图标把它带回来..有人知道怎么做吗?
编辑:到目前为止,我只写了这段代码(它们没有一起运行,但也很好):

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

def quit_window(icon, item):
    icon.stop()
    #window.destroy()

def show_window(icon, item):
    icon.stop()
    #window.deiconify()

def withdraw_window(window):    
    window.withdraw()
    image = Image.open("image.ico")
    menu = (item('Quit', quit_window), item('Show', show_window))
    icon = pystray.Icon("name", image, "title", menu)
    icon.run()

def main():
    window = tk.Tk() 
    window.title("Welcome")
    window.protocol('WM_DELETE_WINDOW', lambda: withdraw_window(window))
    window.mainloop()
main()
Run Code Online (Sandbox Code Playgroud)

python tkinter systray

8
推荐指数
1
解决办法
2704
查看次数

标签 统计

python ×1

systray ×1

tkinter ×1