Алекс Коган | Изучаем PyQt с нуля. Создаем современные десктопные приложения (2026) [PDF]
Автор: Алекс Коган
Издательство: Самиздат
Жанр: Компьютерная литература. Учебное пособие
Формат: PDF
Качество: Обработанный скан
Иллюстрации: Отсутствуют
Описание:Изучаете Python и уже надоело создавать консольные программы? Хотелось бы, чтобы приложения были похожи на профессиональные?
С этой книгой вы пройдете путь от обычных консольных программ до настоящих десктопных приложений! Никакой воды - вы изучите продвинутые темы, такие как асинхронность, стилизация QSS, работа с БД и сможете упаковать свое приложение в полноценный установочный файл!
Внутри
Модуль 1. Быстрый старт и философия Qt
Глава 1. Введение в PyQt и GUl-разработку
- Что такое Qt и PyQt (PyQt5 / PyQt6 - в чём разница и что выбрать сегодня).
- Установка окружения: Python, pip, установка PyQtб и PyQtб-tools.
- Выбор IDE: настройка VS Code / PyCharm для комфортной работы.
Глава 2. Первое окно за 1 О минут
- Анатомия минимального приложения PyQt: QApplication и QWidget .
- Главный цикл событий (Event Loop)- как GUI «слушает» пользователя.
- Понимание базовой структуры кода: ООП-подход vs линейный скрипт.
Модуль 2. Фундамент PyQt: Виджеты и Макеты (Layouts)
Глава 3. Базовые виджеты
- Текст и ввод: QLabel , QLineEdit , QTextEdit .
- Кнопки и переключатели: QPushButton , QCheckBox , QRadioButton . - Списки и выбор: QComboBox , QSpinBox , QSlider .
Глава 4. Позиционирование элементов (Layout Management)
- Почему нельзя задавать координаты вручную ( setFixedSize vs Layouts ).
- Горизонтальная и вертикальная компоновка: QHBoxLayout и QVBoxlayout .
- Сеточные макеты: QGridLayout и макеты форм QFormLayout .
- Управление отступами, выравниванием и расширением ( QSpaceritem , QSizePolicy ).
Глава 5. Сигналы и Слоты - сердце Qt
- Концепция событий в PyQt: чем сигналы отличаются от обычных вызовов функций.
- Подключение стандартных сигналов к слотам (например, клик по кнопке).
- Передача параметров через сигналы.
- Создание собственных (кастомных) сигналов с помощью pyqtSignal .
Модуль 3. Главные окна и ~ визуальный дизаин
Глава 6. Полноноценное приложение: QMainWindow - Разница между QWidget , QDia log и QMainWindow .
- Создание меню ( QMenuBar ), панелей инструментов ( QToolBar) и строки состояния ( QStatusBar ).
- Диалоговые окна: QMessageBox , QFi leDial og , QinputDialog (открытие файлов, предупреждения).
Глава 7. Визуальный редактор Qt Designer
- Установка и запуск Qt Designer.
- Верстка интерфейса методом Drag-and-Drop.
- Конвертация . ui файлов в . ру код через pyuic или динамическая загрузка с помощью uic. loadUi .
- Плюсы и минусы верстки в коде vs в Qt Designer.
Глава 8. Стилизация интерфейса (QSS)
- Введение в Qt Style Sheets (QSS)- «CSS для оконных приложений».
- Изменение цветов, шрифтов, рамок и скруглений.
- Псевдосостояния (hover, pressed, disaЬled).
- Тёмная и светлая темы приложения.
Модуль 4. Работа с данными и продвинутые элементы
Глава 9. Сложные структурированные виджеты
- Вкладки ( QTabWidget ) и выпадающие панели.
- Списки, таблицы и деревья: QListWidget , QTaЫeWidget, QTreeWidget.
- Основы архитектуры ModelMew ( краткое знакомство с QTaЫeView и QAbstractTaЫeModel ).
Глава 10. Многопото1чность и асинхронность (QThread)
- Почему замерзает интерфейс при долгих вычислениях или сетевых запросах.
- Базовое использование QThread и QObject (перемещение задач в фоновый поток).
- Безопасная передача данных из фона в GUI с помощью сигналов.
Модуль 5. Практический проект и сборка
Глава 11. Финальный проект:
Приложение «Менеджер задач / Заметки»
- Проектирование архитектуры и интерфейса.
- Реализация логики: добавление, редактирование, фильтрация и удаление задач.
- Сохранение и загрузка данных (JSON или SQLite).
Глава 12. Упаковка и дистрибуция - Сборка . ру скрипта в автономный исполняемый . ехе (или . арр) файл с помощью Pyinstal ler.
- Добавление иконки приложения и подтяжка всех зависимостей.
- Советы по отладке и частые ошибки новичков.
Скриншоты:
Время раздачи: по мере возможности (минимум до появления первых 3-5 скачавших)