in the Create GUI Applications series
What People Are Saying
The detailed coverage of multithreading is something I couldn't find anywhere else, and you made it so simple!
Loved the tutorial, the thing is that I don't have to memorize it. I understood it.
Fantastic book, gave a great introduction to PyQt5 and some more complex features too!
Thanks for this great PyQt5 book! You explain things so clearly.
Great book, really got me started making Python GUIs!
I bought your PyQt5 book because I wanted a simple way to create native applications, and I was not disappointed.
Good start, looking forward to updates covering more advanced topics such as interacting with databases and APIs [added in 4th Edition].
As a beginner and hobbyist programmer trying to learn Python and implement a GUI this book a must-have.
Our team is making a security product and I needed to make a digital mock up to let the panel know how it works. Thanks to this course I got a real time plot with interactive parts up and running inside of a week.
In the book
Basic concepts and first steps
Starting from the very basics of creating a desktop window this modern PyQt5 book takes you on a tour of the key features of PyQt5 you can use to build real-life applications.
We'll look at the basic building blocks of PyQt5 applications — Widgets, Layouts & Signals and learn how PyQt5 uses the event loop to handle and respond to user input.
Designing UIs with Qt Designer
Build your user interfaces visually in the Qt Designer drag-and-drop editor. We'll take a quick tour of the designer and show how to load your created interface into Python.
Unleash your creativity
Think the default look of Qt is a bit drab? You can customize almost anything using Styles, Palettes and Qt Style Sheets. We'll take a tour through how you can use these to completely customize the look and feel of your applications.
Build data-driven applications
Use PyQt5's MVC-like interface to work efficiently with data, right in your applications. Use custom data stores and sync widgets automatically, allowing you to focus on the logic.
Use tabular views to display SQL databases and numpy or pandas datastructures. Use linked widgets for easy editing.
Create your own custom widgets
PyQt5 provides a huge number of built-in widgets, but sometimes you need a little something extra. Starting with an introduction to bitmap graphics we'll build up to creating entirely custom-drawn widgets for your apps.
Efficient apps with threads and processes
Are your apps stuttering to a halt? Learn how to use threads & processes to keep long-running calculations, loading large files or connections to remote servers all running smoothly.
Capture output from threads and processes and keep your users informed with progress bars and thread managers.
Visualize data with interactive charts
Use matplotlib or PyQtGraph to display data within your app. Use threads to create live dashboards, pulling data from your calculations or remote services.
Unlock the data-analysis capabilities of Python from within your applications.
Build real apps not just examples
Move beyond simple examples, learning how to use to create fully-functional applications.
The book guides you through creating a simple Web browser, Minesweeper game, Paint app and a Simple Todo reminder, using the features you've learned.
Package your apps for distribution
Once your app is ready, it's time to share it!
Discover how to package your applications for distribution on Windows, Mac and Linux.
Not your average ebook
First published over 5 years ago Create GUI Applications has been regularly improved and extended following reader feedback. Now at over 750 pages, you benefit from the combined experience of thousands of readers.
Buying the book gives you access to all future updates.
Every chapter comes with complete, runnable code examples.
Table of Contents
- Basic PyQt5 Features p6-190
- My first Application
- Signals & Slots
- Actions, Toolbars & Menus
- Qt Designer p191-225
- Installing Qt Designer
- Getting started with Qt Designer
- The Qt Resource system
- Theming p226-301
- Qt Style Sheets (QSS)
- Model View Architecture p302-379
- The Model View Architecture — Model View Controller
- A simple Model View — a Todo List
- Tabular data in ModelViews, with numpy & pandas
- SQL databases with Qt models
- Custom Widgets p380-460
- QPainter and Bitmap Graphics
- Creating Custom Widgets
- Concurrent Execution p461-574
- Introducing Threads & Processes
- QRunnable and the QThreadPool
- QRunnable Examples, Progress Bars & thread Managers
- Running external commands with QProcess
- Plotting p575-614
- Further Qt5 Features p615-666
- Extending Signals
- Working with Relative Paths
- System tray & macOS menus
- Enums & the Qt Namespace
- Working with command-line arguments
- Packaging & Distribution p667-742
- Packaging with PyInstaller
- Creating a Windows Installer with Installforge
- Creating a macOS Disk Image Installer
- Creating a Linux Package with fpm
- Packaging with fbs
- Example applications p743-790
- Web Browser
- Translating C++ to Python
- PyQt5 vs. PySide2
Includes 211 PyQt5 code examples and 4 fully-functional application to experiment with.
Frequently Asked Questions
How will I get my purchase?
After completing your purchase you'll receive an email with a link to get your files and course. Keep it secret, keep it safe.
How do I get updates?
You'll receive an email when new content is available, although you can opt out of this if you wish.
What if I don't like it?
If you decide that it is not for you, just reply to the purchase receipt email within 30 days and I'll issue you with a refund. If you could tell me why, that would be great too but it's not necessary.
I have other questions
If you still have questions just drop me an email