pyqt 托盘例子学习
# -*- coding: utf-8 -*-
# python:2.x
__author__ = 'Administrator'
from PyQt4.QtGui import *
from PyQt4.Qt import *
from PyQt4.QtCore import *
from tp import Ui_Form
import sys
from PyQt4.QtCore import Qt
QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))
class Example(QDialog,Ui_Form):
def __init__(self,parent=None):
super(Example, self).__init__(parent)
self.setupUi(self)
self.setContextMenuPolicy(Qt.CustomContextMenu)
self.connect(self,SIGNAL('customContextMenuRequested(const QPoint&)'),self.on_context)
self.createContexMenu()
self.tp.clicked.connect(self.bsfs)
def bsfs(self):
self.setContextMenuPolicy(Qt.CustomContextMenu)
self.x1=QMenu(self)
self.a1=self.x1.addAction(u'托盘')
self.a1.triggered.connect(self.menus)
self.x1.exec_(self.mapToGlobal(QPoint(130,98)))
def on_context(self,point):
self.contextMenu.exec_(self.mapToGlobal(point))
def createContexMenu(self):
"""
创建右击菜单
"""
self.setContextMenuPolicy(Qt.CustomContextMenu)
self.contextMenu=QMenu(self)
self.bsfsc=self.contextMenu.addAction(u'托盘')
self.trayicon=QSystemTrayIcon(self)
self.trayicon.setIcon(QIcon(r'tp.png'))
self.trayicon.setToolTip(u'托盘')
self.bsfsc.triggered.connect(self.menus)
def showMessage(self):
icon=QSystemTrayIcon.Information
self.trayicon.showMessage(u"提示信息",u"点我干嘛?",icon)
def trayclick(self,res):
if res==QSystemTrayIcon.DoubleClick:
self.showNormal()
elif res==QSystemTrayIcon.MiddleClick:#中击
self.showMessage()
def menus(self):
self.min=QAction(u'最小化',self,triggered=self.hide)
self.max=QAction(u'最大化',self,triggered=self.showMaximized)
self.Hy=QAction(u'还愿',self,triggered=self.showNormal)
self.qiuct=QAction(u'退出',self,triggered=qApp.quit)
self.traymen=QMenu(QApplication.desktop())
self.traymen.addAction(self.min)
self.traymen.addAction(self.max)
self.traymen.addAction(self.Hy)
self.traymen.addAction(self.qiuct)
self.trayicon.setContextMenu(self.traymen)
self.trayicon.activated.connect(self.trayclick)
self.trayicon.show()
self.qiuct.triggered.connect(self.qiut)
def qiut(self):
self.showMessage()
self.close()
def activation(self,activation_reason):#托盘
if activation_reason==QSystemTrayIcon.Trigger:
self.show()
app =QApplication(sys.argv)
QApplication.setQuitOnLastWindowClosed(False)
x = Example()
x.show()
sys.exit(app.exec_())
如图:



pyqt 托盘例子学习的更多相关文章
- pyqt托盘例子
# -*- coding: cp936 -*- #!/usr/bin/env python # -*- coding:utf-8 -*- from PyQt4 import QtCore, QtGui ...
- pyqt QTreeWidget例子学习
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' from PyQt4.QtGui import * from Py ...
- pyqt columnView例子学习
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' from PyQt4.QtGui import * from Py ...
- pyqt QTableView例子学习
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' from PyQt4.QtGui import * from Py ...
- pyqt QTableWidget例子学习(重点)
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' from PyQt4.QtGui import * from PyQ ...
- pyqt 正则表达式例子学习
def rex01(self): username=QtCore.QRegExp('[a-zA-Z0-9_]{2,10}') self.names.setValidator(QtGui.QRegExp ...
- pyqt tabWidget例子学习1
from PyQt4 import QtGui from PyQt4 import QtCore from PyQt4.QtCore import pyqtSlot,SIGNAL,SLOT impor ...
- pyqt 配置文件例子学习
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' import sys,datetime from PyQt4.QtC ...
- pyqt 自定义例子学习
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' import sys from PyQt4.QtCore impor ...
随机推荐
- python3-day3(函数-参数)
1.参数 函数的核心是参数传值,其次是返回值,熟练这两这个技术即可灵活使用函数. 1>普通参数 def show(name): print(name) show('tom') 2>默认参 ...
- js iframe 跳转
iframe 页面内操作: //iframe指向指定页面 parent.document.getElementById("hot").src = $("#hidPageU ...
- json对象与字符串的相互转换,数组和字符串的转换
1.json对象转换为字符串 JSON.stringify(value [, replacer] [, space]) var student = new Object(); student.id ...
- 用Scertify Professional实现代码审查
用Scertify Professional实现代码审查 作者:chszs,转载需注明.博客主页: http://blog.csdn.net/chszs Scertify Professional是一 ...
- Android Support库百分比布局
之前写过一篇屏幕适配的文章Android 屏幕适配最佳实践,里面提到了类似百分比布局的东西,可是该方法缺点非常明显,就会添加非常多没用的数据,导致apk包变大. 而谷歌的support库中,添加了一个 ...
- Sybase安装后的配置工作
1.配置数据库参数 配置sybase数据库使用的最大内存 用isql命令行实用工具登录sybase数据库服务器,其中的servername是$SYBASE/interfaces文件中配置的sybase ...
- 分页搜索查询sql
select * from (select t.*,rownum no from " + table + " t where scbj=0)where (no>(" ...
- 图文混排——用表情代替"[文字]"
1.简单设置带属性的字符串 定义一个NSMutableAttributedString带属性的字符串 NSMutableAttributedString *str = [[NSMutableAttri ...
- js实现楼层效果
今天自己写个楼层效果,有一点烦躁,小地方犯错误.各位大神来修改不足啊!!! <!DOCTYPE html><html lang="en"><head& ...
- hdu5358 First One(尺取法)
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud First One Time Limit: 4000/2000 MS (Java/ ...