使QGroupBox :: title展开

时间:2012-12-27 04:15:08

标签: c++ qt user-interface stylesheet groupbox

image

使用样式表我设法设置title元素的背景,如上图(1)所示,使用:

QGroupBox::title
{
    background-color: rgb(255, 255, 0);
    subcontrol-origin: margin;
    subcontrol-position: bottom center;
}

现在我希望标题扩展到托管QGroupBox的最大大小,如图2所示。我该如何做到这一点?

谢谢!

编辑:我希望仅使用样式表来执行此操作。

4 个答案:

答案 0 :(得分:2)

事实证明,由于搜索条件不正确,我在Google上找到解决方案的努力失败了......

http://www.qtcentre.org/threads/43232-customizing-QGroupbox-title目的设置

QGroupBox::title
{
  padding-left: 2000px;
  padding-right: 2000px;
}

不是很漂亮,但至少可以使用样式表来完成。

答案 1 :(得分:1)

您可以设置背景图像以扩展标题。

enter image description here

QGroupBox {
    border: 1px solid #90c6dd;
    border-radius: 0px;
    margin: 8px 8px 7px 7px;
    padding: 56px 10px 10px 10px;
    background-image: url(:/res/svg/group-bg.svg);
    background-repeat: repeat-x;
    background-position: top left;
}

QGroupBox::title {
    font-size: 24px;
    font-weight: bold;
    subcontrol-origin: padding;
    subcontrol-position: top left;
    min-height: 39px;
    padding: 0 10px 0 10px;
}

答案 2 :(得分:0)

如果您可以在QGroupBox父级上获取指针,则可以获取其宽度并知道其参数执行以下操作:

this->setWidth(pOnParent->width());

答案 3 :(得分:-1)

padding-left: 100%;
padding-right: 100%;