Задать вопрос
KirillHelm
@KirillHelm

Как заспаунить статичный BackGround в Qt?

Использую на данный момент графический класс QGraphicsView.
Для того, что бы залить background использую:
view->setBackgroundBrush(QPixmap(":/images/bg.jpg"));

Суть вопроса в том, что при таком отображении бэкграунд заливается копированием текстуры. Меня интересует метод, когда можно позиционировать по середине экрана картинку, без её дублирования и прочей деформации.
  • Вопрос задан
  • 1221 просмотр
Подписаться 2 Оценить 3 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Нетология
    Специалист по информационной безопасности + нейросети
    12 месяцев
    Далее
  • Компьютерная академия «TOP»
    Учебная программа “Разработка программного обеспечения”
    30 месяцев
    Далее
Решения вопроса 1
@Yapparov_Ilyas
QGraphicsView* view= new QGraphicsView;
QPixmap img;
img.load("some_image");
view->setBackgroundBrush(img.scaled(*QSize*));

Устанавливайте фон ровно под размер вашего виджета, тогда дублирования картинки можно избежать. Если окно меняет размер, то переопределите resizeEvent.
Также скорее всего придется установить размер рабочей области setSceneRect, иначе фон начнет бесконечно расширяться при выходе объекта за пределы окна.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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