如何查找QDockWidget标题栏的高度

How to find the height of a QDockWidget title bar?

本文关键字:QDockWidget 标题栏 高度 查找 何查找      更新时间:2023-10-16

我试图找到QDockWidget标题栏的高度,以便对自定义布局进行一些智能调整,但标题栏不是一个单独的小部件,它内置在dock小部件的私有布局中,没有成员可以访问它。有其他方法可以找到它的高度吗?

是的,您可以使用dock的QStyle元素的pixelMetric成员函数来查找标题栏的高度。你可能还想查询页边空白,因为它在标题栏周围增加了空间,布局需要注意这一点。例如:

QDockWidget * myDock = new QDockWidget;
int titleBarHeight = myDock->style()->pixelMetric(QStyle::PM_TitleBarHeight);
int titleBarMargin = myDock->style()->pixelMetric(QStyle::PM_DockWidgetTitleMargin);

您可以始终使用合适的类型或对象名称运行QObject::findChild来查找无法访问的子级。