2013-02-05 80 views
5

我知道它的基本問題,但我有點困惑,可能我忘記了一些東西。在pyqt中添加子菜單QWidget

我試圖子菜單中的「預覽」中的QMenuBar()

到目前爲止,這就是我想要做

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

添加到「工具」,但我想這是不是要加一個子菜單中選擇正確的方式

回答

8

子菜單應該是一個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') 
+0

感謝包括兩個版本!當你可以使用它們時,便利方法當然是很好的(但你不能總是使用它們)。 – aldo