Ich hab ein kleines Problem mit meinem SystemTrayIcon und zwar scheint es so das die App entweder troz event.ignore() schliesst oder die App crasht.
Also ich starte normal die App was auch problemlos funzt und ich seh das SysTrayIcon.
Wenn ich jetzt auf [X] klicke verschwindet das mainWindow, jedoch verschwindet wenige Sekunden später auch das Icon im Tray.
Ganz seltsam ist das ich überhaupt keine Meldung bekomme, auch kein Traceback. ;(
Main:
Code: Alles auswählen
#!/usr/bin/env python
from PyQt4 import QtGui, QtCore
from mainwindow import showMainWindow
import sys
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
# Start and install translator for mainwindow text
Trans = QtCore.QTranslator()
Trans.load(QtCore.QLocale.system().name() + '.qm', './translation/')
app.installTranslator(Trans)
# Start and install translator for Qt Widgets
qtTrans = QtCore.QTranslator()
qtTrans.load( 'qt_' + QtCore.QLocale.system().name(), QtCore.QLibraryInfo.location(QtCore.QLibraryInfo.TranslationsPath))
app.installTranslator(qtTrans)
# Start App
main = showMainWindow()
main.show()
sys.exit(app.exec_())
Code: Alles auswählen
class showMainWindow(QtGui.QMainWindow, mainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.setupUi(self)
# Create Icon
self.createTrayIcon()
# Resize to Content
self.tableWidget.resizeColumnsToContents()
# CloseEvent
def closeEvent(self, event):
self.hide()
event.ignore()
def createTrayIcon(self):
quitAction = QtGui.QAction(self.tr('&Quit'), self)
self.connect(quitAction, QtCore.SIGNAL('triggered()'), QtGui.qApp, QtCore.SLOT('quit()'))
trayIconMenu = QtGui.QMenu(self)
trayIconMenu.addAction(quitAction)
trayIcon = QtGui.QSystemTrayIcon(self)
trayIcon.setContextMenu(trayIconMenu)
trayIcon.setIcon(QtGui.QIcon(':/images/icon-logo.png'))
trayIcon.show()