Design PyQt Forms Visually. Export Python Instantly.

Drag widgets onto a canvas, arrange and configure them, then download a complete, ready-to-run PyQt5 or PySide6 script — no boilerplate to write by hand.

Open Form Builder
🧩
🐍
âŦ‡ī¸

37 Ready-to-Use Widgets

From basic form controls to containers, item views, and date/time pickers

đŸˇī¸

Label

Static text, mapped to QLabel.

🔘

Push Button

Clickable button, mapped to QPushButton with an auto-generated click handler.

âœī¸

Line Edit

Single-line text input, mapped to QLineEdit with placeholder text support.

📝

Text Edit

Multi-line text area, mapped to QTextEdit.

â˜‘ī¸

Checkbox

Boolean toggle, mapped to QCheckBox.

đŸ”ĩ

Radio Button

Exclusive choice control, mapped to QRadioButton and grouped with QButtonGroup.

📋

Combo Box

Dropdown selector, mapped to QComboBox with comma-separated options.

đŸ”ĸ

Spin Box

Numeric stepper, mapped to QSpinBox with configurable min/max/value.

đŸŽšī¸

Slider

Horizontal range control, mapped to QSlider.

📊

Progress Bar

Visual progress indicator, mapped to QProgressBar.

📜

List Widget

Scrollable item list, mapped to QListWidget.

đŸ–ŧī¸

Group Box

Labeled container for organizing related widgets, mapped to QGroupBox.

đŸ”ĸ

LCD Number

Numeric display, mapped to QLCDNumber for compact numeric output.

🧭

Frame

Simple container frame for grouping and decoration, mapped to QFrame.

📋

Table Widget

Grid-like item view, mapped to QTableWidget.

đŸŒŗ

Tree Widget

Hierarchical item view, mapped to QTreeWidget.

â†”ī¸

Horizontal Spacer

Expanding horizontal gap to push widgets apart, mapped to QSpacerItem.

â†•ī¸

Vertical Spacer

Expanding vertical gap to push widgets apart, mapped to QSpacerItem.

📐

HBox Layout

Horizontal layout placeholder for arranging child widgets in a row, mapped to QHBoxLayout.

📏

VBox Layout

Vertical layout placeholder for arranging child widgets in a column, mapped to QVBoxLayout.

đŸ”ŗ

Grid Layout

Row-and-column layout placeholder for arranging child widgets in a grid, mapped to QGridLayout.

🧰

Tool Button

Compact toolbar-style button, mapped to QToolButton.

🔗

Command Link

Vista-style button with a description line, mapped to QCommandLinkButton.

🔟

Double Spin Box

Decimal numeric stepper, mapped to QDoubleSpinBox.

đŸŽ¯

Dial

Rotary numeric control, mapped to QDial.

đŸ–ąī¸

Scroll Bar

Standalone scrollbar control, mapped to QScrollBar.

📅

Calendar

Full month calendar picker, mapped to QCalendarWidget.

📆

Date Edit

Date-only input field, mapped to QDateEdit.

⏰

Time Edit

Time-only input field, mapped to QTimeEdit.

đŸ—“ī¸

DateTime Edit

Combined date and time input, mapped to QDateTimeEdit.

đŸ—‚ī¸

Tab Widget

Multi-page container switched by tabs, mapped to QTabWidget.

🧱

Stacked Widget

Multi-page container showing one page at a time, mapped to QStackedWidget.

⟷

Splitter

Resizable divider between panes, mapped to QSplitter.

đŸ§ŗ

Tool Box

Collapsible, page-based container, mapped to QToolBox.

📑

Menu Bar

Top-level application menu bar, mapped to QMenuBar.

â„šī¸

Status Bar

Bottom status/info bar, mapped to QStatusBar.

🔲

Scroll Area

Scrollable viewport for oversized content, mapped to QScrollArea.

Why Use Qt Form Builder

Built for fast, visual PyQt development

đŸ–ąī¸

Drag & Drop Canvas

Click a widget in the palette to drop it onto the canvas, then drag to reposition and drag the corner handle to resize it.

đŸŽ›ī¸

Live Properties Panel

Edit text, placeholders, options, ranges, variable names, and font size for the selected widget in real time.

🔀

Dual Toolkit Support

Switch between PyQt5 and PySide6 at any time — generated imports and the exec() call adapt automatically.

đŸĒŸ

Window Configuration

Set the window title and canvas size to match the exact QWidget geometry you want.

⚡

Click Handler Stubs

Every push button gets a ready-made on_click() method wired up with clicked.connect(), so you can start adding logic immediately.

âŦ‡ī¸

One-Click .py Export

Download a complete, runnable Python file directly from the browser — no copy-pasting code snippets.

🧲

Snap to Grid & Edge Alignment

Toggle grid snapping and edge alignment so widgets line up cleanly as you drag them into place.

âŒ¨ī¸

Keyboard Nudging

Fine-tune the position of the selected widget with the arrow keys, snapping to the grid step.

From Canvas to Python in 3 Steps

1. Add widgets — click any widget in the left-hand palette to place it on the canvas.

2. Arrange & configure — drag to position, resize from the corner handle, and set properties like text, options, and variable names in the panel on the right.

3. Export — click "Export .py" to download a self-contained PyQt5 or PySide6 script. It builds a QApplication, creates a MainWindow(QWidget) subclass, positions every widget with setGeometry(), and is ready to run with python your_app.py.

37

Widget Types

2

Supported Toolkits

1

Click .py Export

Ready to Build Your First PyQt Form?

Open the builder, drag in a few widgets, and export working Python in minutes