IscanderChe
Маусым 18, 2020, 5:33 Т.Қ.

Qt/C++ - Урок 061 Как масштабировать изображение

День добрый.
Вопрос по уроку Qt/C++ - Урок 061. Добавление изображений в приложение методом Drag And Drop из файлового менеджера .

Как добиться, чтобы изображение в левой части приложения масшабировалось до размеров окна и, соответственно, полосы прокрутки бы не появлялись?

2

Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!

2
Evgenii Legotckoi
  • Маусым 18, 2020, 6:12 Т.Қ.
  • (өңделген)

Добрый день.
QWidget имеет метод size(), который может вернуть текущий размер виджета, а QPixmap имеет метод sacled().
Поэтому в метод dropEvent() вы можете сразу масштабировать изображение до размера виджета QLabel.

Ещё более продвинутый вариант - это использовать QGraphicsView и QGraphicsScene вместо QLabel. Они имеют лучшие возможности масштабирования самих себя, без изменения первоначального качества изображения. Поскольку метод scaled скорее всего порежет качество.

    IscanderChe
    • Маусым 18, 2020, 6:17 Т.Қ.

    Да, изображение хотелось бы оставить as is.
    Спасибо!

      Пікірлер

      Тек рұқсаты бар пайдаланушылар ғана пікір қалдыра алады.
      Кіріңіз немесе Тіркеліңіз