在QDialog的派生类中,添加Layout,可在创建Layout对象的同时指定其父窗口,但这在QMainWindow中行不通。
基于主窗口的程序,默认已经有了自己的布局管理器。
QMainWindow的中心控件是一个QWidget,可以通过setCentralWidget设置。若想在QMainWindow中添加 layout,需要通过将该Layout添加到一个QWidget对象中,然后将该布局设置为该空间的布局,最后设置该控件为QMainWindow的中心控件,代码如下:
QWidget* widget = new QWidget(this);
widget->setLayout(gridLayout);
this->setCentralWidget(widget);
本文介绍如何在QMainWindow中正确地添加布局(Layout)。由于QMainWindow默认已有布局管理器,因此不能直接添加Layout。正确的做法是先创建一个QWidget对象,并设置此QWidget对象的布局为所需的Layout,之后再将此QWidget对象设置为中心控件。
1661

被折叠的 条评论
为什么被折叠?



