[英]An error with QMenuBar in PyQt4
我嘗試放置一個MenuBar,但是它沒有出現,而且我不知道我做錯了什么。
from PyQt4 import QtGui
import sys
class Window(QtGui.QMainWindow):
def __init__(self):
super(Window, self).__init__()
self.setWindowTitle("IDE")
self.initUI
def initUI(self):
grid = QtGui.QGridLayout(self)
menuBar = QtGui.QMenuBar(self)
self.fileMenu = menuBar.addMenu("File")
grid.addWidget(menuBar, 0, 0)
self.setLayout(grid)
結果:
您需要在主窗口上設置菜單欄
self.setMenuBar(menuBar)
在許多情況下,您不需要手動創建菜單欄,只需在主窗口上調用.menuBar()
,它將返回當前菜單欄,或者如果當前菜單欄不存在,則創建一個菜單欄。 如果您的.ui
文件有可能包含菜單欄和菜單欄項,則這是首選方法。
menubar = self.menuBar()
另外,您不能將QMenuBars
添加到布局- 從docs :
無需布置菜單欄。 它會自動將其自己的幾何設置到父窗口小部件的頂部,並在調整父窗口大小時適當地對其進行更改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.