developerDD
@developerDD
Не курю...

Отображение file.jpg background on QWidget?

#include<QtWidgets>


int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
  QWidget wgt;
  wgt.resize(500,500);
  QWidget* w1 = new QWidget(&wgt);
  QPalette pal1;
  pal1.setColor(w1->backgroundRole(),Qt::black);
  w1->setPalette(pal1);
  w1->setGeometry(50,50,100,100);
  w1->setAutoFillBackground(true);

  QWidget* w2 =new QWidget(&wgt);
  QPalette pal2;
  pal2.setBrush(w2->backgroundRole(),QBrush(QPixmap(":/HappyB003.jpg")));
  w2->setPalette(pal2);
  w2->setGeometry(0,200,100,100);
  w2->setAutoFillBackground(true);
  wgt.show();

    return a.exec();
}


Первый виджет отображается, а второй нет. В ресурсы добавил фото.
  • Вопрос задан
  • 332 просмотра
Пригласить эксперта
Ответы на вопрос 1
IGHOR
@IGHOR Куратор тега Qt
Qt/C++ DEV/CTO
Попробуйте так
w2->setStyleSheet("background-image: url(:/HappyB003.jpg)");

Ну или изображение в QLabel::setPixmap засунуть, тогда управлять геометрией вручную.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы