Пункты контекстного меню приложения PyQt4 icon icon не работают - PullRequest
0 голосов
/ 16 августа 2010

У меня есть простое приложение в трее, но пункт контекстного меню «О программе» вообще не работает.

Я определенно пропускаю что-то простое, но важное здесь.

Вопрос в том, что я должен исправить, чтобы пункт меню «О программе» работал?

import sys
from PyQt4 import QtCore
from PyQt4 import QtGui


class SystemTrayIcon(QtGui.QSystemTrayIcon):
    def __init__(self, parent=None):
        QtGui.QSystemTrayIcon.__init__(self, parent)

        self.setIcon(QtGui.QIcon("icon.png"))

        self.iconMenu = QtGui.QMenu(parent)
        appabout = self.iconMenu.addAction("About")
        appexit = self.iconMenu.addAction("Exit")
        self.setContextMenu(self.iconMenu)

        self.connect(appabout,QtCore.SIGNAL('triggered()'),self.showAbout)
        self.connect(appexit,QtCore.SIGNAL('triggered()'),self.appExit)

        self.show()


    def showAbout(self):
        QtGui.QMessageBox.information(self, self.tr("About app"), self.tr("My text here."))

    def appExit(self):
        sys.exit()

if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)

    trayIcon = SystemTrayIcon()
    trayIcon.show()

    sys.exit(app.exec_())

1 Ответ

0 голосов
/ 16 августа 2010

Мое решение

    def showAbout(self):
        QtGui.QMessageBox.information(QtGui.QWidget(), self.tr("About Tunarium"), self.tr("Your text here."))
...