KirillHelm
@KirillHelm

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

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

Суть вопроса в том, что при таком отображении бэкграунд заливается копированием текстуры. Меня интересует метод, когда можно позиционировать по середине экрана картинку, без её дублирования и прочей деформации.
  • Вопрос задан
  • 892 просмотра
Решения вопроса 1
@Yapparov_Ilyas
QGraphicsView* view= new QGraphicsView;
QPixmap img;
img.load("some_image");
view->setBackgroundBrush(img.scaled(*QSize*));

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

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

Войти через центр авторизации
Похожие вопросы