Показать/Скрыть С Помощью PyQt4 QWidget?
Еще раз здравствуйте, ребята. Я застрял здесь-все еще изучаю ООП и питон.
Как мне структурировать эту программу так, чтобы я мог порождать объект QWidget при запуске? Кроме того, как я могу сделать так, чтобы каждый раз, когда я нажимаю на значок в системном трее (а именно mediaIcon.png), этот же виджет не будет повторно создавать себя, а, скорее, показывать/скрывать себя с каждым другим щелчком мыши?
На данный момент, когда я нажимаю на значок, программа Эхо "щелкнула", а затем закрывается. Я не знаю, почему это так.
Премного благодарен,
Akratix
#!/usr/bin/python import sys, os from PyQt4 import QtGui, QtCore class MediaFeed(QtGui.QSystemTrayIcon): def __init__(self, icon, parent=None): QtGui.QSystemTrayIcon.__init__(self, icon, parent) menu = QtGui.QMenu() aboutAction = menu.addAction("About") aboutAction.triggered.connect(self.aboutMenu) exitAction = menu.addAction("Exit") exitAction.triggered.connect(QtGui.qApp.quit) self.setContextMenu(menu) self.activated.connect(self.systemIcon) def aboutMenu(self): print "This should be some information." def systemIcon(self, reason): w = QtGui.QWidget() if reason == QtGui.QSystemTrayIcon.Trigger: print "Clicked." w.show() def main(): app = QtGui.QApplication(sys.argv) mediaFeed = MediaFeed(QtGui.QIcon("mediaIcon.png"), None) mediaFeed.show() sys.exit(app.exec_()) if __name__ == '__main__': main()