Qt - 如何将多个 QGroupBox 添加到 QTabWidget?
Qt - How to add multiple QGroupBox to a QTabWidget?
我将创建多个标签,每个标签内有多个组框,如下所示。
_____________
| | |
|选项卡 1 | Tab2 |
| |______|_________________
|
|组框 1
| ----------------------------------
|
|
|组框 2
| ----------------------------------
如何使用 QTabWidget 和 QGroupBox 执行此操作?
编辑
我在选项卡小部件中用于一个分组框的代码是:
QGroupbox * testGB = new QGroupbox("Group Box 1");
...
// create a test layout and add some widget to it
...
testGB.setLayout(testLayout);
QTabWidget * tab = new QTabWidget this;
tab->addTab(testGB, tr("Tab1"));
但我不知道如何将另一个组框附加到 Tab1
也许这里有一些对您有用的东西。
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QVBoxLayout* lay=new QVBoxLayout;
ui->centralWidget->setLayout(lay);
QTabWidget* tab = new QTabWidget(this);
lay->addWidget(tab);
QWidget* w1=new QWidget(this);
QVBoxLayout* lay1=new QVBoxLayout;
lay1->setSizeConstraint(QLayout::SetMaximumSize);
w1->setLayout(lay1);
tab->addTab(w1,"tab1");
QGroupBox* gb1=new QGroupBox("Group 1-1");
gb1->setMaximumSize(250,100);
gb1->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Preferred);
lay1->addWidget(gb1);
QGroupBox* gb2=new QGroupBox("Group 1-2");
gb2->setMaximumSize(250,100);
gb2->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Preferred);
lay1->addWidget(gb2);
QWidget* w2=new QWidget(this);
QVBoxLayout* lay2=new QVBoxLayout;
lay2->setSizeConstraint(QLayout::SetMaximumSize);
w2->setLayout(lay2);
tab->addTab(w2,"tab2");
QGroupBox* gb3=new QGroupBox("Group 2-1");
gb3->setMaximumSize(250,100);
gb3->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Maximum);
lay2->addWidget(gb3);
QGroupBox* gb4=new QGroupBox("Group 2-2");
gb4->setMaximumSize(250,100);
gb4->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Maximum);
lay2->addWidget(gb4);
}
我将创建多个标签,每个标签内有多个组框,如下所示。
_____________
| | |
|选项卡 1 | Tab2 |
| |______|_________________
|
|组框 1
| ----------------------------------
|
|
|组框 2
| ----------------------------------
如何使用 QTabWidget 和 QGroupBox 执行此操作?
编辑
我在选项卡小部件中用于一个分组框的代码是:
QGroupbox * testGB = new QGroupbox("Group Box 1");
...
// create a test layout and add some widget to it
...
testGB.setLayout(testLayout);
QTabWidget * tab = new QTabWidget this;
tab->addTab(testGB, tr("Tab1"));
但我不知道如何将另一个组框附加到 Tab1
也许这里有一些对您有用的东西。
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QVBoxLayout* lay=new QVBoxLayout;
ui->centralWidget->setLayout(lay);
QTabWidget* tab = new QTabWidget(this);
lay->addWidget(tab);
QWidget* w1=new QWidget(this);
QVBoxLayout* lay1=new QVBoxLayout;
lay1->setSizeConstraint(QLayout::SetMaximumSize);
w1->setLayout(lay1);
tab->addTab(w1,"tab1");
QGroupBox* gb1=new QGroupBox("Group 1-1");
gb1->setMaximumSize(250,100);
gb1->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Preferred);
lay1->addWidget(gb1);
QGroupBox* gb2=new QGroupBox("Group 1-2");
gb2->setMaximumSize(250,100);
gb2->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Preferred);
lay1->addWidget(gb2);
QWidget* w2=new QWidget(this);
QVBoxLayout* lay2=new QVBoxLayout;
lay2->setSizeConstraint(QLayout::SetMaximumSize);
w2->setLayout(lay2);
tab->addTab(w2,"tab2");
QGroupBox* gb3=new QGroupBox("Group 2-1");
gb3->setMaximumSize(250,100);
gb3->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Maximum);
lay2->addWidget(gb3);
QGroupBox* gb4=new QGroupBox("Group 2-2");
gb4->setMaximumSize(250,100);
gb4->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Maximum);
lay2->addWidget(gb4);
}