QDockWidget上的多个Widget 我正在制作一个应用QT和C++的各种过滤器的小程序。

QDockWidget上的多个Widget 我正在制作一个应用QT和C++的各种过滤器的小程序。,c++,layout,widget,qwidget,qdockwidget,C++,Layout,Widget,Qwidget,Qdockwidget,我的问题是,是否可以在QDockWidget上添加多个小部件? 因为我想添加按钮,以便在dock上重新应用最后5个过滤器 下面是我想要实现的一个例子 可以将多个QWidget添加到任何QWidget中。 看起来你可能想做这样的事情: QDockWidget dock(QLatin1String("Last filters")); QWidget* multiWidget = new QWidget(); QVBoxLayout* layout = new QVBoxLayout(); QPush

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

下面是我想要实现的一个例子


可以将多个
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);

您能否提供此示例的完整代码,以便从头开始构建此示例?@AvnerMoshkovitz抱歉,但不能。如果您对如何做一些我很乐意帮助的事情有疑问,这与您的意图和目的背道而驰;只要问一个问题并把我和它联系起来。让我为你做点什么是完全不同的。这不是教程网站或原型库。说我愿意帮忙。所以我建议从这里开始:如果在尝试之后,你仍然在为具体的事情而挣扎,我会说你已经准备好问一个如何做的问题了!了解布局是否可以直接添加到dock小部件将是一件有趣的事情。在这种情况下,不需要
multiWidget
,只需要
layout
。这似乎是不可能的,与其他
Widget
派生类相反。