QDockWidget上的多个小部件

时间:2014-10-09 11:04:43

标签: c++ layout widget qwidget qdockwidget

我正在使用Qt和C ++在图像上应用各种过滤器。

我的问题是,是否可以在 QDockWidget 上添加多个小部件? 因为我想添加按钮以重新应用底座上的最后5个过滤器。

这是我想要实现的一个例子。

Exemple of what i want to achieve

1 个答案:

答案 0 :(得分:8)

可以将多个QWidget添加到任何QWidget中。 看起来你可能想做这样的事情:

QDockWidget dock(QLatin1String("Last filters"));
QWidget* multiWidget = new QWidget();
QVBoxLayout* layout = new QVBoxLayout();
QPushButton* filter1 = new QPushButton(QLatin1String("Filter number 1"));
QPushButton* filter2 = new QPushButton(QLatin1String("Filter number 2"));
QPushButton* filter3 = new QPushButton(QLatin1String("Filter number 3"));
QPushButton* filter4 = new QPushButton(QLatin1String("Filter number 4"));
QPushButton* filter5 = new QPushButton(QLatin1String("Filter number 5"));
QLabel* label = new QLabel(QLatin1String("QPushButtons"));

layout->addWidget(filter1);
layout->addWidget(filter2);
layout->addWidget(filter3);
layout->addWidget(filter4);
layout->addWidget(filter5);
layout->addWidget(label);
multiWidget->setLayout(layout);
dock.setWidget(multiWidget);