Создадим проект с вкладками, добавим изображения и разработаем функциональное меню в PyQt5 Designer.
Создание основного окна и виджета Tab Widget
Создайте новый проект в PyQt5 Designer, выбрав шаблон «Main window». Измените размер окна на 600×400 пикселей в диалоговом окне свойств. Добавьте виджет Tab Widget, растянув его по ширине и высоте основного окна. Этот виджет позволяет создавать вкладки.
Работа с вкладками Tab Widget
Виджет Tab Widget обеспечивает переключение между вкладками. По умолчанию создаются две вкладки. Добавление вкладок осуществляется щелчком правой кнопки мыши на виджете и выбором «Insert Page». Удаление – через «Delete Page». Текст на вкладке изменяется в инспекторе объектов, в свойстве «tab text».
Добавление изображений
Для добавления изображения используйте виджет Label. Разместите его на вкладке, растянув на всю её ширину и высоту. Удалите текст из Label и в свойствах, в параметре pixmap, выберите файл изображения. Label используется для отображения изображений; в PyQt нет отдельного виджета для изображений.
Создание форм с помощью Vertical Layout
На второй вкладке разместите виджет Vertical Layout для создания формы с вертикальным расположением элементов. Альтернативой является Horizontal Layout для горизонтального расположения.
Добавьте кнопку (PushButton) с текстом «Нажми на меня», CheckBox, PlainTextEdit, и ComboBox. Элементы в ComboBox добавляются через контекстное меню («Insert Items»). Также можно использовать Slider, TimeEdit, DateEdit, DateTimeEdit. CalendarWidget предоставляет отдельное окно календаря.
Работа с меню
Добавьте строку меню, щелкнув правой кнопкой мыши на основном окне и выбрав «Create Menu Bar» (на macOS меню отображается в системной строке меню). Удаление меню осуществляется его удалением из Designer. Текст пунктов меню изменяется двойным щелчком. Новые пункты меню и разделительные линии добавляются через контекстное меню («Add Separator»).
Просмотр результата
Нажмите кнопку «Preview» для просмотра результата.
В этом уроке мы рассмотрели создание проекта в PyQt5 Designer, работу с виджетами Tab Widget, добавление изображений, создание форм с помощью Vertical Layout и работу с меню. Реализация функциональности осуществляется в коде на Python.