PyQt6 is a Python binding of the cross-platform GUI toolkit Qt. Applications built with PyQt6 will run on any platform supported by Qt & Python including Windows, OS X, Linux, iOS and Android.

Created by Riverbank Computing, PyQt is free software (GPL licensed) and has been in development since 1999. The latest version PyQt6 was released in 2021 and the library continues to be updated.

For a complete guide to desktop application development with Python & PyQt6, see the PyQt6 tutorial and PyQt6 book Create Simple GUI Applications with Python & Qt.

Explore PyQt6

PyQt6

Install PyQt6 on macOS

Step-by-step guide to installing PyQt6 on macOS for Python GUI development

AttributeError type object 'Qt' has no attribute 'Alignment'

Understanding enum naming changes in PyQt6.1 and how to fix alignment flags

PyQt6 Widgets

Using QPushButton, QCheckBox, QComboBox, QLabel and QSlider widgets

Animations and Transformations With QtQuick in PyQt6

Building an animated analog clock in QML with rotations and spring animations

PyInstaller 4.2 & PySide6

Published 21.04.2021

Creating Grouped and Stacked Bar Charts with PyQtGraph

Build professional grouped and stacked bar charts in your PyQt6 applications using pyqtgraph's BarGraphItem

Multithreading PyQt6 applications with QThreadPool

Run background tasks concurrently without impacting your UI

First Steps With Qt Designer and PyQt6

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

How to Clear and Refresh ComboBox Delegate Data in QTableView

Keep your QTableView ComboBox delegates in sync when your underlying data changes

Adding QComboBox to a QTableView and getting/setting values after creation

Use QItemDelegate to embed combo boxes in your table views, with per-row data and value tracking

PyQt6 Book Now Available: Create GUI Applications with Python & Qt6

The hands-on guide to building desktop apps with Python and Qt6

Delay in signal from thread

Published 08.04.2021

Create Applications with QtQuick in PyQt6

Build modern applications with declarative QML

QSettings Usage

Published 05.04.2021

QTableView Align Currency Column Right with QStyledItemDelegate

Use Qt.TextAlignmentRole in your model's data() method to align columns in a QTableView

Drag & Drop TreeView Nodes to Reorder Items with a Custom Tree Model in PyQt6

Implement drag and drop reordering in QTreeView using a custom QAbstractItemModel

How to Drag & Drop SVG Elements into a QGraphicsScene

Dragging and dropping SVG elements into a QGraphicsScene using QGraphicsSvgItem

Create a Settings window

Build a settings dialog with QDialog, QGroupBox, QRadioButton and QSettings in PyQt and PySide

How to Get the PyQt6 Version Number?

Find out which version of PyQt6 you're running

What modules are missing from PySide6 & PyQt6?

The Qt extension modules not yet available in Qt 6.1

PyQt6 vs PySide6

What's the difference between the two Python Qt libraries? ...and what's exactly the same (most of it)

How to run parallel process along with QProcess thread

Running background processes and file watching simultaneously in PyQt6 without blocking the GUI
1 2 3 4 5