当前位置: 首页 > 后端技术 > Python

最小化PyQt5到托盘,升级小闹钟...

时间:2023-03-26 02:01:42 Python

【阅读全文】把之前写的小闹钟打包,让它最小化到托盘后台运行。闹钟本身就是一个监听程序,如果一直放在任务栏不小心点关了会很麻烦。所以解释一下托盘的使用方法。这是一个小闹钟的例子。如果没有,可以到我的公众号里的‘PyQt5UI’菜单查看,或者直接在账号里回复‘小闹钟’获取源码。需要在文末获取升级后的源码,才能获取下载链接。最小化到托盘,用这个PyQt5模块就够了。fromPyQt5.QtWidgetsimport*首先不管其他,先创建一个实现托盘功能的类,最后将托盘功能集成到小闹钟的源码中并应用。classTrayModel(QSystemTrayIcon):def__init__(self,Window):super(TrayModel,self).__init__()self.window=Windowself.init_ui()definit_ui(self):#初始化菜单self.menu=QMenu()self.manage_action=QAction('小闹钟设置',self,triggered=self.manage_clock)self.quit_action=QAction('退出应用程序',self,triggered=self.quit_clock)self.menu.addAction(self.manage_action)self.menu.addAction(self.quit_action)self.setContextMenu(self.menu)self.setIcon(QIcon('clock.ico'))self.icon=self.MessageIcon()self.activated.connect(self.app_click)defmanage_clock(self):self.window.showNormal()self.window.activateWindow()defquit_clock(self):qApp.quit()defapp_click(self,reason):pass右键时会出现两个菜单按钮单击鼠标按钮,分别为“小闹钟设置”和“退出应用程序”。只有当你选择退出托盘中的应用时,小闹钟程序才会真正停止运行。使用时在原小闹钟应用的init_ui()函数中调用TrayModel类。self.tray=TrayModel(self)最后为了防止点击小闹钟应用主窗口时应用退出,需要重写这个函数。defcloseEvent(self,a0:QCloseEvent)->None:a0.ignore()self.hide()self.tray.show()综合以上,完成小闹钟的托盘升级。公众号回复“升级小闹钟”获取升级后的小闹钟直接运行。我是【Python集中营】,很高兴看到大结局,我是专注于Python知识分享的公众号,希望得到大家的关注~【之前精彩】pyinstaller打包的exe文件太大了,用pipenv就可以轻松解决!PyQt5Gadget:ExcelDataGroupingAggregator...Exception:存储MYSQL转义数据,保证数据存储的准确性...制作一个小闹钟,按计划做事...利用pyqt5的日期控件制作一个小日历方便查看...