首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QGroupBox边框

QGroupBox边框
EN

Stack Overflow用户
提问于 2010-11-30 00:58:47
回答 3查看 39.4K关注 0票数 19

搜索了一段时间后,我发现在分组框上设置可见边框的方法是使用StyleSheet属性。我补充道:

代码语言:javascript
复制
border: 2px solid gray;

但也有几个问题。

1) groupbox内的所有内容也继承此设置!

2)边框在标题附近有一个小洞/小块缺失。

以下是我正在讨论的内容的图片:

有人知道该怎么做吗?

谢谢,

大卫

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-11-30 01:54:33

第一个问题非常简单,当您向控件添加样式表时,它会自动将样式传播到所有子小部件。但是,您可以通过几种方式限制样式表的使用。您可以指定要应用样式表的控件类型。示例:

代码语言:javascript
复制
QGroupBox { 
     border: 2px solid gray; 
     border-radius: 3px; 
 } 

此样式表将仅在分组框中设置。但是,如果您将第二个分组框放入此分组框中,样式也会传播到此分组框中。可能是好的也可能是坏的。

另一种方法是明确指定要应用样式的小部件的objectName。示例:

代码语言:javascript
复制
QGroupBox#MyGroupBox { 
     border: 2px solid gray; 
     border-radius: 3px; 
 } 

这将仅将样式应用于对象名称为MyGroupBox的组框。

至于空间,它的发生是因为标题是在你的边框上绘制的。您还可以在样式表中添加节,以更改分组框标题。这包括将其背景设置为透明,并将标题移动到您的心脏内容。

示例:这将把你的标题设置到组框的左上角,就在你的边框内,没有间隙。

代码语言:javascript
复制
QGroupBox::title { 
    background-color: transparent;
     subcontrol-position: top left; /* position at the top left*/ 
     padding:2 13px;
 } 
票数 34
EN

Stack Overflow用户

发布于 2014-01-31 10:24:27

这对我在Qt 5.1上是有效的。

代码语言:javascript
复制
qApp->setStyleSheet("QGroupBox {  border: 1px solid gray;}");

Elimeléc

票数 1
EN

Stack Overflow用户

发布于 2010-11-30 01:29:10

指定组框样式的选择器,例如:

代码语言:javascript
复制
QGroupBox
{
     border: 2px solid gray;
}

至于间隙,你可能可以通过设置一些填充来修复它。Check the docs here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4306019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档