【发布时间】:2018-06-21 10:28:39
【问题描述】:
我正在尝试更改/更新 QSystemtrayIcon 的图标,但它不起作用。
main.py:
if __name__=="__main__":
app = QApplication(sys.argv)
from systray import SystemTrayIcon
trayIcon = SystemTrayIcon(parent=app)
trayIcon.show()
sys.exit(app.exec_())
系统托盘.py:
class SystemTrayIcon(QSystemTrayIcon):
def __init__(self, parent=None):
QSystemTrayIcon.__init__(self, parent)
icon = QIcon(abspath("images/icon.png"))
self.setIcon(icon)
#menu stuff and so on
def set_icon(self):
self.setIcon(QIcon(abspath("images/envelope.png")))
在我的 mainwindow.py 中,我想在事件发生时更改图标。如何调用 set_icon 方法或直接从 mainwindow.py 更改图标?
非常感谢
编辑:
我尝试在 mainwindow.py 中进行以下操作:
import systray
class MainWindow(QWidget):
#class stuff
def change_icon(self):
trayIcon = systray.SystemTrayIcon()
trayIcon.set_icon()
该函数被调用,当我在系统托盘中的 set_icon 中放置一个打印件时,它的打印件将被打印,但它不会更改图标。
有什么建议吗?
【问题讨论】: