Qt:如何获取特定小部件的像素度量

Qt:如何获取特定小部件的像素度量,qt,Qt,我有一个QWidget,它可能是一个窗口,带有标题栏和框架,也可能是一个简单的控件,比如按钮或框架 我如何编写代码来查询标题栏高度,以便得到正确的结果?即,如果窗口有一个标题栏高度,则为系统标题栏高度,否则为0 我尝试使用QStyle像素度量,但它总是返回系统值: QStyleOptionTitleBar option; option.initFrom(widget); captionHeight = widget->style()->pixelMetric(QStyle::PM_T

我有一个QWidget,它可能是一个窗口,带有标题栏和框架,也可能是一个简单的控件,比如按钮或框架

我如何编写代码来查询标题栏高度,以便得到正确的结果?即,如果窗口有一个标题栏高度,则为系统标题栏高度,否则为0

我尝试使用QStyle像素度量,但它总是返回系统值:

QStyleOptionTitleBar option;
option.initFrom(widget);
captionHeight = widget->style()->pixelMetric(QStyle::PM_TitleBarHeight, &option, widget);
使用
widget::isWindow()
来判断小部件是否在它自己的窗口中,然后使用你所拥有的