PyQt is a Python binding of the cross-platform GUI toolkit Qt. Applications built with PyQt 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. PyQt5 was released in 2016 and last updated in October 2021.

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

Explore PyQt

Showing articles for All (273) PyQt6 (105) PySide6 (5) PyQt5 (78) Streamlit (0) Tkinter (0) PySide2 (2) Kivy (0)

Segmentation Fault With QProcess Manager

How to fix TypeError and segmentation faults when using QProcess in PyQt6

Fixing DLL Loading Errors When Packaging PyQt Apps with PyInstaller

How to solve "Could not find module .dll" errors when running your packaged app on other computers

Laying Out Your PyQt6 GUIs With Qt Designer

Use Qt Designer to effortlessly build your application UI

Changing Ticks in PyQtGraph Objects to Strings

How to replace numeric axis ticks with custom labels like month names or dates in PyQtGraph

Toggle & AnimatedToggle

Custom Toggle Switch Widget as a QCheckBox Replacement

QTabWidget selected tab text blank

Fixing invisible tab labels on macOS with PyQt6

How to Change the Decimal Separator in QDoubleValidator

Use QLocale to control the decimal point format in PyQt6 QLineEdit validation

Launching PyQt apps in macOS at login

How to configure your PyQt application to start automatically when a user logs in on macOS

How to set working directory of QProcess

Running external programs from different folders using QProcess in PyQt5

How to use "File->New" to create a new (duplicate) window of current form

Open multiple instances of the same window from your PyQt6 application

Animating Custom Widgets With QPropertyAnimation in PyQt5

Add dynamic visual effects and smooth animations to your custom PyQt5 widgets

How to Show Cursor Position in PyQtGraph Embedded in PyQt5

Add a crosshair overlay that tracks the mouse cursor on your PyQtGraph plots

QTableWidget Crashes When Updating Every 1 Millisecond

Why modifying widgets from background threads causes crashes and how to fix it with signals

Why Widgets Appear as Separate Windows

Understanding widget parenting in Qt and how to fix widgets that float outside your main window

setAlignment(QtCore.Qt.AlignCenter) method is not working as expected

Why calling setAlignment on a QStackedLayout doesn't center your widgets, and what to do instead

How to Disable WebRTC in QWebEngineView with PyQt5

Control WebRTC settings and feature permissions in PyQt5's web engine

Opening links in a new window with QWebEngineView

Redirect links to a separate floating browser window

Real Time Change of Widgets?

How to update the UI while in a loop

The QResource System in PyQt5

Using the QResource system to package additional data with your applications

Fixing TypeError lambda() missing 1 required positional argument checked in Qt signals

Why connecting signals with lambda in PySide6 and PyQt6 can go wrong, and how to fix it

QWebEngineView change anchor behavior

How to intercept link clicks in QWebEngineView and open them in a new window or the system browser

Using QProcess to Run External Programs in PyQt5

Run background programs without impacting your UI

Retrieve underlying data object from QAbstractTableModel

How to get the original Python object back from a selected row in a QTableView
1 2 3 4 5 6 7 8 9 10 11