0

我编写了一个程序,在系统托盘中创建一个图标,然后单击鼠标右键显示一个上下文菜单,其中包含 2 点 Notes 和 Quit,Notes 项是单点 Create new note 的子菜单。但是为什么该项目不显示注释。为什么?

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()
4

1 回答 1

1

只需将m1菜单作为父级传递给m2它,它就会起作用。

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

在我的 Ubuntu 机器上测试。

于 2012-12-01T15:44:21.227 回答