zoukankan      html  css  js  c++  java
  • PYQT窗口托盘目录

    #UI.py,通过UI设计师制作后直接转换为UI.py脚本

    # -*- coding: utf-8 -*-

    from PyQt4 import QtCore, QtGui

    try:
        _fromUtf8 = QtCore.QString.fromUtf8
    except AttributeError:
        _fromUtf8 = lambda s: s

    class Ui_Form(object):
        def setupUi(self, Form):
            Form.setObjectName(_fromUtf8("Form"))
            Form.resize(400, 300)

            self.retranslateUi(Form)
            QtCore.QMetaObject.connectSlotsByName(Form)

        def retranslateUi(self, Form):
            Form.setWindowTitle(QtGui.QApplication.translate("Form", "Form", None, QtGui.QApplication.UnicodeUTF8))

    #UI.py,可视化UI.py

    # -*- coding: utf-8 -*-

    from PyQt4 import QtCore, QtGui, Qt
    from UI import *

    class MainWindow(QtGui.QMainWindow): 

        def __init__(self,parent=None):

            QtGui.QWidget.__init__(self,parent)
            self.ui=Ui_Form()
            self.ui.setupUi(self)

            #显示托盘图标
            self.trayIcon = QtGui.QSystemTrayIcon(self)
            self.trayIcon.setIcon(QtGui.QIcon("images/logo.png"))
            self.trayIcon.show()
            #双击托盘信号槽
            self.trayIcon.activated.connect(self.trayClick)
            #激活右键托盘菜单
            self.trayMenu()

        #定义双击托盘事件
        def trayClick(self,reason):

           if reason==QtGui.QSystemTrayIcon.DoubleClick:
               self.showNormal()
           else:
               pass

        #创建右击托盘菜单
        def trayMenu(self):

            #托盘提示信息
            self.trayIcon.setToolTip("托盘测试软件")
            #菜单项1
            img_open = QtGui.QIcon("imageslogo.png")
            self.restoreAction = QtGui.QAction(img_open,"打开主窗口", self)
            self.restoreAction.triggered.connect(self.showNormal)
            #菜单项2
            self.quitAction = QtGui.QAction("退出", self)
            self.quitAction.triggered.connect(QtGui.qApp.quit)
            #创建托盘目录
            self.trayIconMenu = QtGui.QMenu(self)
            self.trayIconMenu.addAction(self.restoreAction)
            self.trayIconMenu.addSeparator()#添加分隔线
            self.trayIconMenu.addAction(self.quitAction)
            #设置目录为创建的目录
            self.trayIcon.setContextMenu(self.trayIconMenu)

    if __name__ == "__main__":

        import sys

        app = QtGui.QApplication(sys.argv)
        myapp=MainWindow()
        myapp.show()
        app.exec_()

  • 相关阅读:
    ADB命令大全
    Backup your Android without root or custom recovery -- adb backup
    Content portal for Pocketables Tasker articles
    Is there a way to detect if call is in progress? Phone Event
    Tasker to proximity screen off
    Tasker to detect application running in background
    Tasker to create toggle widget for ES ftp service -- Send Intent
    Tasker to proximity screen on
    Tasker to answer incoming call by pressing power button
    Tasker to stop Poweramp control for the headset while there is an incoming SMS
  • 原文地址:https://www.cnblogs.com/doudongchun/p/3694791.html
Copyright © 2011-2022 走看看