PyQt5:如何获得MainWindow布局



因此,当我尝试向MainWindow添加布局时self.mainLayout = QtWidgets.QVBoxLayout(self.MainWindow)我收到以下错误:QLayout: Attempting to add QLayout "" to QMainWindow "MainWindow", which already has a layout

如何获得默认布局?这可能吗?

QMainWindow布局是非常自定义的,由一个中央小部件和其他动态部分(例如菜单、状态栏、工具栏、停靠区(组成。替换它没有多大意义,因为那样你只需要从一个普通的QWidget开始。

通常要在QMainWindow上编辑的布局是其centralWidget的布局。您可以获取/设置它,并对其进行相应的操作(包括布局(。

正如其他人所回答的那样,QMainWindow有自己的布局。

但是,如果您想在主窗口的中心小部件中添加一个固定大小的小部件,那么您可能可以使用小部件的setFixedSize方法,将其添加到中心小部件。

示例:

centralWidget = QtGui.QWidget(self)
layout = QtGui.QHBoxLayout(centralWidget)
#Set the fixed size
anotherWidgetOne.setFixedSize(20,20)
#Add other widgets to the central widget
layout.addWidget(self.anotherWidgetOne)
#Set the central widget
self.setCentralWidget(self.centralWidget)

相关内容

  • 没有找到相关文章

最新更新