使用 PyQt5 的系统托盘应用程序
在本文中,我们将学习如何使用 PyQt 创建系统托盘应用程序。
系统托盘(或菜单栏)是操作系统任务栏上的一个区域。如果您使用的是 Windows,您可以在桌面的右下角找到该系统,如果使用的是 macOS,则可以在右上角找到该系统。此通知区域中可见的图标是在前台运行的图标。一些使用系统托盘函数的著名应用程序是 Windscribe(VPN 应用程序)和 Adobe Creative Cloud。
菜单栏应用程序还可用于使用菜单栏图标中提供的快捷方式最小化控制桌面应用程序。只需使用系统托盘上提供的选项,您就可以选择不打开整个应用程序并继续工作。在本文中,您将学习如何创建这些应用程序。
下面是一个名为 Windscribe 的应用程序示例。
代码:
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
app = QApplication([])
app.setQuitOnLastWindowClosed(False)
# Adding an icon
icon = QIcon("icon.png")
# Adding item on the menu bar
tray = QSystemTrayIcon()
tray.setIcon(icon)
tray.setVisible(True)
# Creating the options
menu = QMenu()
option1 = QAction("Geeks for Geeks")
option2 = QAction("GFG")
menu.addAction(option1)
menu.addAction(option2)
# To quit the app
quit = QAction("Quit")
quit.triggered.connect(app.quit)
menu.addAction(quit)
# Adding options to the System Tray
tray.setContextMenu(menu)
app.exec_()
输出:
如您所见,我的 mac 菜单栏上有一个标记图标,并且可以看到三个选项,即 Geeks for Geeks、GFG 和退出。通过单击最后一个选项(退出),您将退出应用程序。