Anton Kapustin Asked:2020-09-11 18:14:06 +0800 CST2020-09-11 18:14:06 +0800 CST 2020-09-11 18:14:06 +0800 CST Pyqt5 SystemTrayIcon - 它可以在托盘中显示 QLabel 吗? 772 它是否可以SystemTrayIcon显示,例如,当用鼠标左键单击它时QLabel,即 一些信息,而不是上下文菜单? python 1 个回答 Voted Best Answer gil9red 2020-09-11T18:29:19+08:002020-09-11T18:29:19+08:00 这是可能的。设置小部件的用途QWidgetAction和方法:setDefaultWidget from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * app = QApplication([]) app.setQuitOnLastWindowClosed(False) icon = app.style().standardIcon(QStyle.SP_DirOpenIcon) # Размещение своей иконки # icon = QIcon('favicon.ico') tray = QSystemTrayIcon(icon) menu_widget = QLabel('<b>Hello</b>, World!') menu_widget_action = QWidgetAction(menu_widget) menu_widget_action.setDefaultWidget(menu_widget) menu = QMenu() menu.addAction(menu_widget_action) tray.setContextMenu(menu) tray.activated.connect(lambda x: menu.exec(tray.geometry().center())) tray.show() app.exec() 看起来像这样: 另一个例子。
这是可能的。设置小部件的用途
QWidgetAction
和方法:setDefaultWidget
看起来像这样:
另一个例子。