Qt QLabel边框尺寸

问题描述 投票:1回答:1

我有一个边框周围的标签,它是由这个功能设置的:

this->setStyleSheet("border: 1px solid black");

但是当我想改变标签的位置时,我还必须给出边框的宽度和高度,但是我从哪里得到它?

size border qlabel
1个回答
0
投票

事实上,参数可以通过this->style();获得,它返回一个指向QStyleSheetStyle的指针...然后通过renderRule()可以获得存储所需结构的QRenderRule。唯一的问题是这些方法是私有的,供内部使用。

所以最简单的方法是使用RegExp:

QRegExp regexp(".*border: *(\\d+)px.*");
if (regexp.indexIn(btn->styleSheet()) >= 0)
    qDebug() << regexp.cap(1);
© www.soinside.com 2019 - 2024. All rights reserved.