Добрый день.
Нужно сделать фон в виде картинки на QWidget. В CSS файле прописано
QWidget
{
background-image: url(:/images/bk.png);
}
Если в main.cpp я делаю так:
// ... загрузка CSS ...
app.setStyleSheet(css);
QWidget *w = new QWidget;
Ui::Form form;
form.setupUi(w);
то всё работает. Но если я делаю отдельную форму, унаследованную от QWidget и от Ui::Form, то не работает:
MyWidget::MyWidget() : QWidget()
{
setupUi(this);
setObjectName("MyWidget");
}
Ui::Form::setupUi() не создаёт никаких дополнительных виджетов, просто пустая форма.
Причём background-color работает, а -image - нет. Аналогичную проблему я решил для QPushButton - там тоже фоновый цвет работал, а -image нет. Нужно было установить "border: none;". Но у QWidget вроде border нету...
Вариант с унаследованным MyWidget не работает ни в одном следующих случаев, если также установить в CSS
MyWidget
{ background-image: url(:/images/bk.png); }
MyWidget#MyWidget
{ background-image: url(:/images/bk.png); }
#MyWidget
{ background-image: url(:/images/bk.png); }
Как это поправить ?
Спасибо.