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 ...
随机推荐
- Hive MapJoin
摘要 MapJoin是Hive的一种优化操作,其适用于小表JOIN大表的场景,由于表的JOIN操作是在Map端且在内存进行的,所以其并不需要启动Reduce任务也就不需要经过shuffle阶段,从而能 ...
- 关于ionic的一些坑(3)
(1)对于页面中的input之类的输入框,取值的时候一般采用的是$scope.model=””的方式来取得input输入框的值,然后进行操作,但实际上在ionic里面是取不到的,取值之前必须先把inp ...
- C++读写CSV文件
前两天看了<Reading and Writing CSV Files in MFC>(http://www.codeproject.com/Articles/53759/Reading- ...
- js方法调用
<!DOCTYPE html> <html> <head> <title>测试</title> </head> <body ...
- Linux的启动流程
1.首先是bios加电自检.初始化,这个过程会检测相关硬件(cpu.内存.硬盘等),然后会读取硬盘中的MBR:2.加载内核,读取/boot里边的配置文件:3.启动初始化进程,开始运行/sbin/ini ...
- transition过渡的趣玩
本例中将三张图(来自网络)进行堆叠,鼠标悬停触发.附有源代码
- (转)window.location.search的用法
location.search是从当前URL的?号开始的字符串如:http://www.51js.com/viewthread.php?tid=22720它的search就是?tid=22720 通过 ...
- (转)添加服务引用和添加Web引用对比
在WindowsForm程序中添加服务引用和Web引用对比 为了验证书上有关Visual Studio 2010添加服务引用和Web引用的区别,进行实验. 一.建立一个Web服务程序项目新建项目,选择 ...
- web并发访问的问题
一般的webapplication,可能会遇到这样的问题,你可以这样模拟:用浏览器开一个窗口,选中一条记录,编辑之,但是先不要保存,新开一个浏览器窗口,找到这条记录,删除之,然后再回到第一个窗口点击保 ...
- Apache URL转发
httpd.conf 尾巴加 Alias /web "F:\xampp\htdocs\test/" <Directory "F:\xampp\htdocs\test ...