So far we have been creating apps using Python code. This works well in many cases, but it can get a bit cumbersome to define all widgets programmatically. The good news is that Qt comes with a graphical editorQt Designer — which provides a drag-and-drop UI editor. Using Qt Designer you can define your UIs visually and then hook up the application logic later.

If you're going to be distributing your applications, you might also want to take a look at the QResource framework, which simplifies bundling data files (like icons) with your applications.

Explore Using Qt Designer with PyQt5

Using Qt Designer with PyQt5

Install Qt Designer Standalone

Qt Designer Download for Windows, Mac and Linux

The QResource System in PyQt5

Using the QResource system to package additional data with your applications

Creating Dialogs With Qt Designer and PyQt5

Using the drag and drop editor to build PyQt5 dialogs

Debugging widgets not appearing in Qt applications

How to figure things out when something goes wrong

Loading .ui Files in Python — Working with QWidget and QDialog Forms

How to import any Qt Designer .ui file into your Python application and interact with its widgets

Using Qt Designer .ui Files with fbs for PyQt5 Packaging

Load your Qt Designer interfaces directly in fbs-based applications without converting to Python

Laying Out Your PyQt5 GUIs With Qt Designer

Use Qt Designer to effortlessly build your application UI

Embedding Custom Widgets from Qt Designer in PyQt5

Learn how to use custom widgets in your PyQt5 applications when designing with Qt Designer

First Steps With Qt Designer and PyQt5

Use Qt Designer's drag and drop interface to design your PyQt5 GUI

Calculon — Build a Desktop Calculator with PyQt

Create a fully functional calculator app using PyQt5 and Qt Designer