【发布时间】:2023-03-06 15:45:01
【问题描述】:
我使用 PyQt 和 cx_freeze 构建了一个具有系统托盘图标的应用程序,但是该图标不会显示在 Windows 7 的系统托盘中(该应用程序在那里并且正在运行,但只是一个空白点 - 没有图标)。现在它在其他计算机上的 Windows XP 中运行良好,只是在 win 7 中不行。有什么想法吗?
【问题讨论】:
标签: python windows-7 pyqt4 cx-freeze systray
我使用 PyQt 和 cx_freeze 构建了一个具有系统托盘图标的应用程序,但是该图标不会显示在 Windows 7 的系统托盘中(该应用程序在那里并且正在运行,但只是一个空白点 - 没有图标)。现在它在其他计算机上的 Windows XP 中运行良好,只是在 win 7 中不行。有什么想法吗?
【问题讨论】:
标签: python windows-7 pyqt4 cx-freeze systray
icon = QtGui.QIcon('blah.png')
self.tray_icon = QtGui.QSystemTrayIcon(self)
self.tray_icon.setIcon(icon)
self.tray_icon.setVisible(True)
self.tray_icon.show()
这应该可以。但是在win XP中看起来你只需要“self.tray_icon.setIcon(icon)” 而不是“.setVisible(True)”或“.show()”让它工作,这是我遇到的问题。我还创建了一个继承 QtGui.QApplication 的类并添加:
icon = QtGui.QIcon('blah.png')
self.setWindowIcon(icon)
不幸的是,我不知道上面的哪一个完全解决了这个问题,因为我没有一台 win 7 电脑来进行个性测试,所以我采用了霰弹枪方法,它奏效了。
【讨论】: