在pyqt QWidget中添加子菜单

时间:2013-02-05 11:50:36

标签: pyqt4 pyside qwidget qmenu qmenubar

我知道它非常基本的问题,但我有点困惑,可能是我忘记了什么。

我正在尝试将子菜单“预览”添加到QMenuBar中的“工具”()

到目前为止,这就是我要做的事情

tools = fileMenu.addMenu('&Tools')
prevAction = QtGui.QAction('Preview',self)
prevInNuke = QtGui.QAction("Using &Nuke",prevAction)
tools.addAction(prevAction)
prevAction.addAction(prevInNuke)

但我想这不是添加子菜单的正确方法

1 个答案:

答案 0 :(得分:10)

子菜单应该是QMenu,而不是QAction

tools = fileMenu.addMenu('&Tools')
prevMenu = QtGui.QMenu('Preview',self)
prevInNuke = QtGui.QAction("Using &Nuke",prevAction)
tools.addMenu(prevMenu)
prevAction.addAction(prevInNuke)

如果使用便捷方法,可能会更简单一些:

tools = fileMenu.addMenu('&Tools')
prevMenu = tools.addMenu('Preview')
prevAction = prevMenu.addAction('Using &Nuke')