IscanderChe
18 июня 2020 г. 17:33

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

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

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

2

Вам это нравится? Поделитесь в социальных сетях!

2
Evgenii Legotckoi
  • 18 июня 2020 г. 18:12
  • (ред.)

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

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

    IscanderChe
    • 18 июня 2020 г. 18:17

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

      Комментарии

      Только авторизованные пользователи могут публиковать комментарии.
      Пожалуйста, авторизуйтесь или зарегистрируйтесь
      • Последние комментарии
      • Evgenii Legotckoi
        16 апреля 2025 г. 17:08
        Благодарю за отзыв. И вам желаю всяческих успехов!
      • IscanderChe
        12 апреля 2025 г. 17:12
        Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
      • AK
        1 апреля 2025 г. 11:41
        Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
      • Evgenii Legotckoi
        9 марта 2025 г. 21:02
        К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
      • VP
        9 марта 2025 г. 16:14
        Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…