Всем привет. Вот код:
from PyQt4 import QtCore, QtGui, uic
class MainWidget(QtGui.QMainWindow):
def __init__(self, parent):
QtGui.QMainWindow.__init__(self, parent)
uiClass, baseClass = uic.loadUiType('main.ui')
icon = QtGui.QIcon('icon.png')
self.setWindowIcon(icon)
self.ui = uiClass()
self.ui.setupUi(self)
self.tbicon = QtGui.QSystemTrayIcon(icon)
self.tbicon.show()
self.tbicon.showMessage(u'title',u'text',self.tbicon.MessageIcon(2), 3000)
trayMenu = QtGui.QMenu(self)
quitAction = QtGui.QAction(u'Выход', self)
QtCore.QObject.connect(quitAction, QtCore.SIGNAL("triggered()"), QtGui.qApp, QtCore.SLOT("quit()"))
trayMenu.addAction(quitAction)
self.tbicon.setContextMenu(trayMenu)
class App(QtGui.QApplication):
def __init__(self, argv):
QtGui.QApplication.__init__(self, argv)
self.ui = MainWidget(None)
self.ui.show()
self.setQuitOnLastWindowClosed(True)
if __name__ == '__main__':
import sys
app = App(sys.argv)
sys.exit(app.exec_())
Почему при выходе из приложения в трее остается иконка? и на консоль идет сообщение
QApplication::qAppName: Please instantiate the QApplication object first
Что я сделал неправильно?