Программа Qt Designer позволяет создавать графический интерфейс пользователя (GUI) для приложений Python. Этот урок посвящен созданию простого калькулятора.
Создание нового проекта
Создайте новый проект в Qt Designer. Выберите шаблон «Main Window». Размер окна можно не задавать. Нажмите «Create».
Обзор Qt Designer
Qt Designer содержит несколько основных компонентов:
- Основное окно: Окно приложения в режиме разработки.
- Предпросмотр: Позволяет просматривать внешний вид приложения (меню «Form» -> «Preview»).
- Панель виджетов: (слева) Содержит объекты (виджеты), которые можно перетаскивать на основное окно: кнопки (QPushButton), радио-кнопки (QRadioButton), флажки (QCheckBox), текстовые надписи (QLabel) и другие.
- Property Editor: (обычно справа) Позволяет изменять свойства выбранных объектов (текст, шрифт, цвет, размер, расположение). Двойной клик по объекту также открывает редактирование некоторых свойств.
- Object Inspector: Отображает иерархию объектов. Позволяет удалять, перемещать и управлять объектами (MainWindow, центральный виджет, menubar, statusbar).
Создание дизайна калькулятора
Удалите существующие объекты. Установите windowTitle на «Калькулятор», ширину на 300 пикселей, высоту на 400 пикселей. Удалите menubar.
Добавление элементов
Добавьте:
- Текстовую надпись (QLabel) для отображения результата (ширина 300 пикселей, высота 50 пикселей, отступ 10 пикселей, шрифт 15, жирный, белый текст, темный фон — используйте Change Stylesheet).
- Кнопки с цифрами (0-9), арифметическими операциями (+, -, *, /) и кнопку «=» (высота 80 пикселей, ширина 150 пикселей). Расположите кнопки, используя Property Editor. Измените цвет фона и задайте осмысленные имена (objectName).
Сохранение проекта и генерация кода Python
Сохраните проект в файл с расширением .ui. Для генерации кода Python используйте pyuic5.
Установка необходимых пакетов
Установите библиотеки PyQt5 и pyqt5-tools:
- Windows: pip install PyQt5 pyqt5-tools
- macOS (Homebrew): brew install pyqt
Проверьте установку: python -m PyQt5.uic.pyuic (возможны предупреждения, но не ошибки).
Генерация кода
Используйте команду:
pyuic5 -o main.py calculator.ui
где calculator.ui — имя файла проекта, main.py — имя генерируемого файла.
Добавление функциональности (Python)
В main.py добавьте функциональность калькулятора. В методе setupUI вызовите initFunctions, который будет обрабатывать нажатия кнопок. Используйте лямбда-выражения для обработки событий (clicked). При нажатии кнопки вызывайте writeNumber, добавляющий текст кнопки к значению в текстовой надписи (label_result). Добавьте обработчик для кнопки «=», использующий eval() для вычисления результата (с проверкой на начальный ноль и управление переменной is_equal для последовательных операций).
В этом уроке мы создали простой калькулятор, используя Qt Designer и Python. Этот пример демонстрирует основные принципы работы с Qt Designer и PyQt для разработки GUI-приложений.