Граница QLabel видна внутри QGridLayout

У меня проблема с дизайном интерфейса.

Я использую QT 4.6.2 с QTCreator 1.3.1

У меня есть QFrame с фоновым изображением, которое "рисует" сетку, см. Изображение ниже

Когда я добавляю QLabel в макет, когда я запускаю приложение, я вижу верхнюю левую границу. Для теста я убрал QLabel из макета, и он работает как положено (без границ)

У вас есть идеи по этому поводу?

Заранее спасибо за вашу любезную помощь

Лео

1 ответ

Решение

Вероятно, вы используете таблицу стилей для установки фона вашего QFrame. Что-то вроде этого:

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

Таблица стилей распространяется на дочерние виджеты, поэтому я считаю, что ваш фон применяется и к дочерним QLabels.

Измените свою таблицу стилей на эту (обратите внимание на точку в начале):

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

Селектор точек будет ограничивать таблицу стилей только дочерними виджетами вашего QFrame, которые имеют тип QFrame, но не будет применять его для наследования классов, таких как QLabel. Посмотрите документы, чтобы узнать больше о селекторах.

Другие вопросы по тегам