Welcome to Create Simple GUI Applications where we're going to use Python and Qt to do just that.
If you want to learn to build GUI applications with Python the learning curve is pretty steep. There is a lot you need to know just to get something to work.
Many tutorials offer only screen casts and miss the simple concepts that actually matter. Like writing any code, successfully programming PyQt GUI applications is all about thinking in the right way. In this course I give you the real useful basics that you need to get building PyQt applications as quickly as possible. I include explanations, diagrams, walk-throughs and code to make sure you know what you're doing every step of the way.
By the end of the first 8 minute lesson you will have a running Qt application - ready to customise as you like. So, lets get started!
Installation guide for PyQt and Qt on Windows. If you are using MacOS X or Linux you can skip this lecture.
Installation guide for PyQt and Qt on MacOS X. If you are using Windows or Linux you can skip this lecture.
Take the first steps in creating a PyQt application. By the end of this lecture you'll understand the basics of the Qt event loop and create your first application window.
Test your knowledge of creating a Qt window and starting up an application.
Learn about the Qt Signals, Slots and Events architecture. This is key to understanding how Qt applications work and will allow you to make full use of Qt to build more complex applications.
Test your knowledge of the Qt Signals, Slots and Events architecture.
Introduction to two basic UI components provided by Qt - Toolbars and Menus. Here you'll learn to make use of QAction to define application actions that can be represented in both the toolbar and menu and accessed through keyboard shortcuts.
Test your knowledge of two key UI components provided by Qt - Toolbars and Menus.
A short introduction to some simple Qt widgets that are available. Be introduced to the standard widgets and see how to configure them for use.
Test your knowledge of the Qt widgets.
Layouts are the key to positioning elements in a Qt application. Learn the basic positional layouts QVBoxLayout, QHBoxLayout and QGridLayout and the special layout QStackedLayout.
Test your knowledge of QVBoxLayout, QHBoxLayout and QGridLayout and the special layout QStackedLayout.
A short demonstration of using dialog boxes in Qt applications. Dialog boxes allow you to present windows to your users requesting input.
Test your knowledge of using Qt dialog boxes.
Start creating your own custom web browser "Mozzarella Ashbadger" using Qt QWebView widgets.
Control your browser by adding navigation QActions to the toolbar and connecting the signals to QWebView slots.
Implement printing of the QWebView page view and be introduced to the Qt included print preview dialog.
Add support for loading and saving page content to .html files.
Implement a help menu with an About dialog and link to the Mozzarella Ashbadger homepage.
Use a QTabWidget to support tabbed browsing. Here we'll demonstrate using lambda signal wrapping to implement tabbed browsing without altering the internal logic of the application.
Books about Python, Qt and PyQt programming to supplement your learning on this course.
Source code for lectures. Note that individual source code is also available in each lecture's resources section.
A self-taught programmer with over 25 years experience dating back to the days of the ZX Spectrum and Sam Coupé. I now work as a postdoctoral researcher in bioinformatics, using Python and other tools to analyse large datasets.
I have over 8 years experience with Python and 5+ years experience building applications with PyQt. I've developed and released a number of successful PyQt applications and Python packages and contribute to popular open source projects.
I'm originally from the United Kingdom but recently moved to the Netherlands. Ik spreek een beetje Nederlands.