1

我正在尝试制作一个小型天气应用程序。一切都与我的代码完美,除非我使用此代码有一个系统托盘图标:

from pystray import MenuItem as item
import pystray

def quit_window(icon, item):
    icon.stop()
    main.destroy()

def show_window(icon, item):
    icon.stop()
    main.after(0,main.deiconify)

def withdraw_window():  
    main.withdraw()
    image = Image.open("logo2.ico")
    menu = (item('Show', show_window), item('Quit', quit_window))
    icon = pystray.Icon("weather app", image, "weather app", menu)
    icon.run()

main.protocol('WM_DELETE_WINDOW', withdraw_window)

我试图通过使用 py2exe 将我的应用程序作为一个独立的应用程序。当我完成将我的应用程序导出到 exe 并尝试启动它时,我收到了这个错误:

Traceback (most recent call last):
File "Weather-V102.pyw", line 9, in <module>
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
File "<frozen importlib._bootstrap>", line 627, in _load_backward_compatible
File "<frozen zipimport>", line 259, in load_module
File "pystray\__init__.pyc", line 48, in <module>
File "pystray\__init__.pyc", line 40, in backend
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

任何人都可以帮助我解决这个问题。谢谢你的帮助

4

0 回答 0