Qt Creator: Урок 5 — Изображения и статус-бар

Этот урок посвящен добавлению изображений в приложение Qt и работе с компонентом statusBar.

Добавление изображения

В Qt нет специального виджета для отображения изображений. Для этой цели можно использовать, например, QLabel. Удалим текст внутри метки и растянем её до нужного размера. Для добавления изображения воспользуйтесь кнопкой с изображением стрелки, выберите файл и укажите его путь. Изображение будет добавлено в метку, и его можно растягивать или уменьшать. При уменьшении изображения до размеров меньших, чем само изображение, оно будет обрезаться. К изображению, как и ко всему приложению, можно применять стили (CSS), но это будет рассмотрено в последующих уроках.

Работа со StatusBar

StatusBar расположен в нижней части окна приложения. Для вывода информации в него используется метод showMessage(). Пример демонстрирует использование statusBar() для отображения сообщения об успешной или неудачной авторизации. Вместо всплывающих окон QMessageBox, сообщения выводятся в statusBar, что удобно для кратких сообщений.

Использование ресурсов Qt для изображений

Для корректного отображения изображений рекомендуется использовать ресурсы Qt.

Шаг 1: Создание ресурсной папки:

  1. В окне проекта нажмите «Добавить новый».
  2. Выберите «Файл ресурсов Qt».
  3. Задайте имя (например, «resources»).
  4. Сохраните. Создастся файл resources.qrc.

Шаг 2: Добавление изображений:

  1. Создайте папку (например, «images») внутри папки проекта.
  2. Поместите изображения в эту папку.
  3. В файле ресурсов (resources.qrc) добавьте новый префикс (например, «images»).
  4. Добавьте файлы из папки «images» в список ресурсов, указав префикс.

Шаг 3: Отображение изображения в коде:

  1. Подключите библиотеку QtGui.
  2. Создайте переменную типа QPixmap и загрузите изображение, используя путь, включающий префикс ресурса (например, ":/images/home.png").
  3. Создайте переменные для ширины и высоты изображения.
  4. Установите изображение в QLabel используя метод setPixmap().
  5. Примените метод setScaledContents(true) для масштабирования изображения при изменении размера окна.
  6. Используйте Qt::KeepAspectRatio для сохранения пропорций изображения при масштабировании.

При использовании ресурсов Qt изображение корректно отображается и масштабируется вместе с приложением.

В этом уроке мы изучили добавление изображений в приложение Qt с помощью QLabel и ресурсов Qt, а также использование statusBar для вывода сообщений пользователю. Правильное использование ресурсов Qt обеспечивает корректное отображение и масштабирование изображений.

Что будем искать? Например,программа