2012-12-01 325 views
0

我編寫了一個程序,在系統托盤中創建一個圖標,然後單擊鼠標右鍵顯示帶有2個點的上下文菜單Notes和Quit,Notes項是一個點創建的子菜單新筆記。但爲什麼該項目不顯示註釋。爲什麼?顯示上下文相關子菜單

from PyQt4 import QtCore, QtGui 
import sys 

def main(): 
    app = QtGui.QApplication(sys.argv) 

    tray = QtGui.QSystemTrayIcon() 
    icon = app.style().standardIcon(QtGui.QStyle.SP_DesktopIcon) 
    tray.setIcon(icon) 
    tray.show() 
    CreateMenu(tray, app) 
    sys.exit(app.exec_()) 

def CreateMenu(tray, app): 
    m1 = QtGui.QMenu("Menu 1") 
    m2 = QtGui.QMenu("Notes") 
    m2.addAction("Create new note") 
    m1.addMenu(m2) 
    m1.addSeparator() 
    m1.addAction("Quit", app.quit) 
    tray.setContextMenu(m1) 


if __name__ == '__main__': 
    main() 

回答

1

只需通過m1菜單作爲父母m2,它會工作。

m1 = QtGui.QMenu("Menu 1") 
m2 = QtGui.QMenu("Notes", m1) 

在我的Ubuntu盒子上測試過。