我目前在表单中有3个垂直布局。我想通过拉伸它们为用户提供根据自己的喜好调整大小的选项。这可以通过垂直布局来实现吗?
答案 0 :(得分:0)
如前所述,您可以使用QSplitter。即使无法通过Designer添加它,也有办法解决。在窗口小部件中创建这些框架(没有布局),在cpp和h文件中,您将这样做:
标题中的,写
class YourClass : public QSplitter
代替
class YourClass : public QWidget
并在构造函数
中替换cpp中的这些声明QWidget(parent)
的
QSplitter(parent)
我猜它确实(或者几乎可能需要进行其他一些更改,因为添加包含文件)。
编辑:此时使用QMainWindow类中的代码:
QSpliter *splitter = new QSplitter(this) //or declare 'splitter' in .h file.
splitter->setOrientation(Qt::Vertical);
splitter->addWidget(widget1);
splitter->addWidget(widget2);
splitter->addWidget(widget3);
setCentralWidget(splitter);
答案 1 :(得分:0)
从4.8.6开始,可以通过在分割器布局选项中使用 Laying [水平/垂直]布局在Qt Designer中添加QSplitter。它有点令人惊讶,它没有在小部件框中列出,但您可以使用它。