今天开做项目的过程,发现,基于QMainWindow作为父类进行页面开发的时候,同时使用QVBoxLayout QHBoxLayout来做布局,会出现组件显示不出来的情况。经过各种查找搜罗资料发现:
在pyqt5中使用了父类为QMainWindow的话,在里面使用布局类,QGridLayout, QHBoxLayout ,QVBoxLayout 时,发现不好用。
但是
如果是在以QWidget为父类的自定义类中使用这三个布局类的话,是很好用的。
所以这三个布局类要在QMainWindow中使用的时候要多写几句话来解决这个问题。具体如下所示:
widget = QWidget()
gridLayout = QGridLayout(self)
widget.setLayout(gridLayout)
self.setCentralWidget(widget)