linux tk 窗口图标,一起运行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()

最佳答案

最后我弄清楚了

现在我只需要将其与我的主要代码结合起来,希望该代码也能对其他人有所帮助…

from pystray import MenuItem as item

import pystray

from PIL import Image

import tkinter as tk

window = tk.Tk()

window.title("Welcome")

def quit_window(icon,item):

icon.stop()

window.destroy()

def show_window(icon,item):

icon.stop()

window.after(0,window.deiconify)

def withdraw_window():

window.withdraw()

image = Image.open("image.ico")

menu = (item('Quit',menu)

icon.run()

window.protocol('WM_DELETE_WINDOW',withdraw_window)

window.mainloop()

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

小编个人微信号 jb51ccc

喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值