# -*- coding: utf-8 -*-
import sys
# Form implementation generated from reading ui file 'tt.ui'
#
# Created by: PyQt4 UI code generator 4.11.4
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGui ,QtNetwork
from PyQt4.QtCore import pyqtSlot
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4 import uic
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
class MainWindow(QtGui.QMainWindow):
def __init__(self,parent=None):
QtGui.QWidget.__init__(self,parent)
self.ui=uic.loadUi("ui/main_ui.ui", self)
#self.pushButton.clicked.connect(self.func_buttonAdd)
self.createActions() #加載選單
self.createTrayIcon() #加載選單
self.trayIcon.activated.connect(self.iconActivated)
self.setIcon()
def func_buttonAdd(self):
QtGui.QMessageBox.about( self, 'PyQt3333333333333333333333333333333', "About222" )
def createTrayIcon(self):#右下角托盤選單
try:
self.trayIconMenu = QMenu(self)
self.trayIconMenu.addAction(self.minimizeAction)
#self.trayIconMenu.addAction(self.maximizeAction)
#self.trayIconMenu.addAction(self.restoreAction)
#self.trayIconMenu.addSeparator()
#self.trayIconMenu.addAction(self.quitAction)
self.trayIcon = QSystemTrayIcon(self)
self.trayIcon.setContextMenu(self.trayIconMenu)
except BaseException, e:
print "createTrayIcon", e.message
def setIcon(self):
try:
self.trayIcon.setIcon(QtGui.QIcon("system/main.ico"))
self.trayIcon.setToolTip("China creation axe")
self.trayIcon.show()
except BaseException, e:
print "seticon",str(e)
def createActions(self):#加載選單
try:
print "hello"
self.minimizeAction = QAction(u"最小化", self,triggered=self.test2)
#self.maximizeAction = QAction(u"最大化", self,triggered=self.showMaximized)
#self.restoreAction = QAction(u"還原", self,triggered=self.showNormal)
#self.quitAction = QAction(u"退出", self,triggered=QApplication.instance().quit)
except BaseException, e:
print "creationssssssssssss",e.message
def test2(self):
print "test2"
def iconActivated(self, reason):
print "tuopan"
return
try:
if reason in (QSystemTrayIcon.Trigger, QSystemTrayIcon.DoubleClick): #單擊圖示反應
self.showNormal() #還原
#triggered=self.showNormal
#print("111111111111111")
#顯示應該在這里
# elif reason == QSystemTrayIcon.MiddleClick:
# print("22222")
except BaseException, e:
print str(e)
if __name__ == "__main__":
try:
app = QtGui.QApplication(sys.argv)
myapp = MainWindow()
myapp.show()
#QtGui.QMessageBox.information(myapp,"aa", "aa")#彈出對話框
sys.exit(app.exec_())
except e:
print e.message
直接在pycharm上運行沒有任何問題。但是用python xx.py 運行后發現右鍵托盤選單半天沒出來子選單內容然后主界面點幾下就卡死了
這難道是pyqt的bug???玩pyqt的人少。碰倒問題基本無法解決真的坑爹。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/23140.html
