QLabel 边框在 QGridLayout 中可见

QLabel border visible within QGridLayout

我遇到了 UI 设计问题。

我正在使用 QT 4.6.2 和 QTCreator 1.3.1

我有一个带有背景图像的 QFrame "draw" 网格见下图

当我在布局中添加 QLabel 时,当我 运行 我看到左上角的应用程序时。为了测试,我从布局中移出了 QLabel,它按预期工作(根本没有边框)

你知道吗?

在此先感谢您的热心帮助

狮子座

您可能正在使用样式 sheet 来设置 QFrame 的背景。像这样:

QFrame{
    background-image: url(picture.png);
}

样式 sheet 传播到子部件,所以我的想法是您的背景也应用于子 QLabel。

将你的风格 sheet 改成这个(注意开头的点):

.QFrame{
    background-image: url(picture.png);
}

点选择器会将样式 sheet 限制为仅 QFrame 类型为 QFrame 的子窗口小部件,但不会像 QLabel 那样将其应用于继承 类。请参阅 docs 以了解有关选择器的更多信息。