Этот урок посвящен добавлению изображений в приложение Qt и работе с компонентом statusBar.
Добавление изображения
В Qt нет специального виджета для отображения изображений. Для этой цели можно использовать, например, QLabel. Удалим текст внутри метки и растянем её до нужного размера. Для добавления изображения воспользуйтесь кнопкой с изображением стрелки, выберите файл и укажите его путь. Изображение будет добавлено в метку, и его можно растягивать или уменьшать. При уменьшении изображения до размеров меньших, чем само изображение, оно будет обрезаться. К изображению, как и ко всему приложению, можно применять стили (CSS), но это будет рассмотрено в последующих уроках.
Работа со StatusBar
StatusBar расположен в нижней части окна приложения. Для вывода информации в него используется метод showMessage(). Пример демонстрирует использование statusBar() для отображения сообщения об успешной или неудачной авторизации. Вместо всплывающих окон QMessageBox, сообщения выводятся в statusBar, что удобно для кратких сообщений.
Использование ресурсов Qt для изображений
Для корректного отображения изображений рекомендуется использовать ресурсы Qt.
Шаг 1: Создание ресурсной папки:
- В окне проекта нажмите «Добавить новый».
- Выберите «Файл ресурсов Qt».
- Задайте имя (например, «resources»).
- Сохраните. Создастся файл resources.qrc.
Шаг 2: Добавление изображений:
- Создайте папку (например, «images») внутри папки проекта.
- Поместите изображения в эту папку.
- В файле ресурсов (resources.qrc) добавьте новый префикс (например, «images»).
- Добавьте файлы из папки «images» в список ресурсов, указав префикс.
Шаг 3: Отображение изображения в коде:
- Подключите библиотеку QtGui.
- Создайте переменную типа QPixmap и загрузите изображение, используя путь, включающий префикс ресурса (например, ":/images/home.png").
- Создайте переменные для ширины и высоты изображения.
- Установите изображение в QLabel используя метод setPixmap().
- Примените метод setScaledContents(true) для масштабирования изображения при изменении размера окна.
- Используйте Qt::KeepAspectRatio для сохранения пропорций изображения при масштабировании.
При использовании ресурсов Qt изображение корректно отображается и масштабируется вместе с приложением.
В этом уроке мы изучили добавление изображений в приложение Qt с помощью QLabel и ресурсов Qt, а также использование statusBar для вывода сообщений пользователю. Правильное использование ресурсов Qt обеспечивает корректное отображение и масштабирование изображений.