
Learn how graphical user interfaces enable Python programs to respond to user events using widgets, signals, and slots in a cross-platform Qt framework.
Explore how PyQt5 and SIP enable Python bindings to Qt, compare PySide2 and SIP, and review Riverbank Computing licensing options including GPL and commercial licenses.
Set up your PyQt5 environment by installing Python (3.x), choosing an IDE like PyCharm, and using Qt Designer with pyuic5 and pyrcc5 to convert UI and resources.
Define a custom string representation for a point object by implementing __str__, enabling clear printouts with x and y coordinates formatted to five decimals and the EPG code.
Explore how to gather user input with QInputDialog in PyQt5 using static methods such as getText, getInt, getDouble, and getItem, handling OK or cancel results and defaults.
Explore creating and manipulating dates and times in PyQt5 with QDate and QTime, including Julian day, Unix time, time zones, and formatting date and time as strings.
Learn how to replace absolute positioning with flexible PyQt5 layouts, including box, form, and grid layouts, adding widgets and sub-layouts, using stretches to push content, and configuring alignment and directions.
Master PyQt5's QGridLayout by placing push buttons in a grid with row and column coordinates, and control sizing with stretch factors. Learn to encapsulate layout setup in a dedicated method.
Explore how to build a QStackedLayout with a combo box in PyQt5, switching visible container widgets (general, species, location, surveys) via current index and signals.
Learn to enhance a PyQt5 QTreeWidget by enabling double-click actions, displaying messages, and adding new classes via a combo box, line edit, and button.
Explore how to display numbers with PyQt5's QLCDNumber widget, control digits and mood (decimal, hex, auto, binary), handle overflow, and style via segment style and stylesheets with practical coding demos.
Learn to use PyQt5 QSlider and QDial to adjust numeric values, display them on an LCD, and synchronize slider and dial with signals.
Explore how to customize PyQt5 widgets with Qt style sheets. Apply global or widget-specific styles using selectors and properties like color, background, border, font, padding, and margins.
Learn how to design interfaces with Qt Designer, dragging and dropping widgets, and connect signals to slots; save as an XML UI file and convert to Python for PyQt5 development.
Learn to connect a slider's value change signal to an LCD display using Qt Designer's signal editor, exploring predefined slots, drag-and-drop connections, and editing signals and slots.
Recreate a group box interface in QtDesigner by building a dialog with a horizontal layout, three group boxes, and radio buttons.
Convert xml ui files from cute designer to python code with PyQt5 uic, generating a class for your main dialog that wires signals and slots.
Decouple the PyQt5 gui from application code by exporting the ui as a module or loading the ui file with UIC, enabling flexible development and signals and slots integration.
Learn to develop modern graphical user interfaces in Python that have the look and feel of your native operating system, whether its Windows, MacOs, or Linux. Learn when and how to use text boxes, comboboxes, file dialogs, date and color pickers, web page viewers, images, and more to create state of the art applications with menus, toolbars, and user size-able windows.
When your GUI is finished learn how to populate it with data from a SQL database and allow users to modify that data and save their changes in full featured applications. Learn how to create multi-threaded applications so that data processing doesn't interfere with the user interface.