PyQt4 + Win7 — не убирается иконка приложения из таскбара при hide()?

Надо чтобы при сворачивании окна, приложение скрывалось и показывалась иконка в трее.

Проблема в том, что когда я делаю self.hide() в hideEvent — иконка приложения не пропадает из таскбара

class myWindow(QtGui.QMainWindow):<br/>
 <br/>
 def __init__(self, parent=None):<br/>
 QtGui.QWidget.__init__(self, parent=None)<br/>
 <br/>
 <br/>
 def hideEvent(self, event):<br/>
 self.hide()
  • Вопрос задан
  • 3058 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Sergey6661313
мне кажется что после получения сигнала hide() вызывается hideEvent который вы переопределили на действие hide() - таким образом образуется бесконечный цикл. И получается что иконка не пропадает потому что приложение вообще зависло.

def hideEvent(self, event):
    QtGui.QMainWindow.hideEvent(self, event)  # или без self уже не помню.
    self.trayIcon = QtGui.QSystemTrayIcon(QtGui.QIcon(“myicon.png”),self) # где myicon.png картинка вашей иконки...
    self.trayIcon.show()



готовые примеры уже есть в вашей системе:
Python\Lib\site-packages\PyQt4\examples
Python\Lib\site-packages\PyQt4\docs
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы