2012-12-01 127 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盒子上测试过。