如何检测列表化的QDockWidget是否为活动选项卡

met*_*tal 5 c++ qt qt5

我在Qt 5.1应用程序中有多个dock小部件.我想知道哪个选项卡当前处于活动状态(当前它是否具有焦点),但我不知道如何以编程方式获取该信息.

我已经尝试过QWidget::IsVisible(),QWidget::IsVisibleTo()并检查返回的列表QMainWindow::tabifiedDockWidgets(),它排除了作为参数发送的小部件,因此无法提供订单.

有任何想法吗?

Pav*_*hov 7

您可以使用以下代码检查dock小部件的某些部分是否可见:

bool really_visible = !widget->visibleRegion().isEmpty();
Run Code Online (Sandbox Code Playgroud)

我测试了结果值取决于哪个停靠小部件选项卡处于活动状态.