【问题标题】:Adjust title position in a QGroupBox (using style sheets)调整 QGroupBox 中的标题位置(使用样式表)
【发布时间】:2017-07-28 02:45:47
【问题描述】:

我正在尝试设置 QGroupBox 的样式以符合某些设计要求:

注意 - 顶部的组标题应该在左侧但超出盒子曲率。

使用下面的样式表,我得到了下面的图像(如果我删除了“left”这个词,则是第二张图像):

QGroupBox {
    font: bold; 
    border: 1px solid silver;
    border-radius: 6px;
    margin-top: 6px;
}
QGroupBox::title {
    subcontrol-origin:  margin;
    subcontrol-position: top left;    // for second image:  top; 
    padding: 0 2px 0 2px;
}

所以,看来我想要的是subcontrol-position: top left;,但增加了偏移量。我在任何地方都找不到。

添加填充会擦除该行,所以这不是我想要的。

我刚才发现了一个选项 - subcontrol-origin: 的另一个选项:

QGroupBox::title {
    subcontrol-origin:  padding;
    subcontrol-position: top left; 
    padding: -16 12px 0 12px;
}

看起来几乎是正确的 - 但现在边框穿过了标题。

如何移动组框的标题,使其仍位于左侧但超过框曲率,并且曲率保持可见,例如在设计中?

【问题讨论】:

    标签: qt qtstylesheets qgroupbox


    【解决方案1】:

    应用以下样式:

    QGroupBox {
        font: bold;
        border: 1px solid silver;
        border-radius: 6px;
        margin-top: 6px;
    }
    
    QGroupBox::title {
        subcontrol-origin: margin;
        left: 7px;
        padding: 0px 5px 0px 5px;
    }
    

    我得到这样的东西:

    【讨论】:

      猜你喜欢
      • 2011-02-13
      • 1970-01-01
      • 2016-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-29
      • 2015-07-19
      相关资源
      最近更新 更多