Seite 1 von 1

SystemTrayIcon/CloseEvent: App crash?

Verfasst: Mittwoch 8. Dezember 2010, 20:42
von AngelusNoctis
Hi

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_())
MainWindow:

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()
        

Re: SystemTrayIcon/CloseEvent: App crash?

Verfasst: Mittwoch 8. Dezember 2010, 20:49
von lunar

Re: SystemTrayIcon/CloseEvent: App crash?

Verfasst: Mittwoch 8. Dezember 2010, 21:37
von AngelusNoctis
Dat wars...

Danke :)