要将QDockWidget添加到窗口,您需要调用addDockWidget(area, *widget)
其中area
是Qt::DockWidgetArea。
我的问题是,在将QDockWidgets添加到某个区域之后,是否可以获取该区域中所有QDockWidgets的列表?
当然,可以使用QObject::findChild<QDockWidget>
,遍历结果,然后使用QMainWindow::dockWidgetArea(widget)
编译所需区域中所有小部件的列表。
但我想知道是否有更好的方法?看起来像是&#34; getDockWidgetsInArea&#34;功能应该已经存在。
答案 0 :(得分:0)
为什么不覆盖QMainWindow?您可以创建自己的getDockWidgetsInArea
函数并创建 Wt::WPushButton *open_doors_button = new Wt::WPushButton("open all");
container_box->addWidget(open_doors_button);
open_doors_button->clicked().connect(boost::bind(&Servicemode::doors_open_all, this));
Wt::WPushButton *stop_doors_button = new Wt::WPushButton("stop opening");
container_box->addWidget(stop_doors_button);
stop_doors_button->clicked().connect(boost::bind(&Servicemode::stop_doors_open_all, this));
函数。