qt-signals-slots

Explain and demonstrate Qt signals and slots for C++ and Python inter-object communication.

6|1|Updated Feb 16, 2026
One-click install
npx skills add https://github.com/L3DigitalNet/Claude-Code-Plugins --skill qt-signals-slots
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: qt-signals-slots
Source: https://github.com/L3DigitalNet/Claude-Code-Plugins/tree/main/plugins/qt-suite/skills/qt-signals-slots
Command: npx skills add https://github.com/L3DigitalNet/Claude-Code-Plugins --skill qt-signals-slots

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps developers understand and effectively use Qt's signals and slots mechanism for robust inter-object communication in C++ and Python applications.

Core Features & Use Cases

  • Define Custom Signals: Learn how to declare signals in Python (PySide6/PyQt6) and C++.
  • Connect Signals to Slots: Understand new-style connections, lambda usage, and cross-object communication.
  • Cross-Thread Communication: Implement safe and efficient communication between threads using signals.
  • Debugging: Identify and resolve common issues like disconnected signals or incorrect slot connections.

Quick Start

Use the qt-signals-slots skill to define a custom signal named 'data_ready' that emits a list of strings.

Frequently Asked Questions about qt-signals-slots

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I define and emit custom signals in PySide6 or PyQt6?

To define custom signals in PySide6 or PyQt6, you declare them as class attributes and emit them using the new-style syntax. This mechanism enables robust inter-object communication without tight coupling between components.

What is the best way to handle cross-thread communication in Qt?

The best way to handle cross-thread communication in Qt is using signals and slots with queued connections. This ensures safe multithreading by automatically posting events to the receiver's thread event loop.

How does the @Slot decorator work when connecting signals in Python?

The @Slot decorator in Python marks a method as a Qt slot, defining its signature for signal connections. It ensures proper type matching when connecting signals to slots for inter-object communication.

What is the difference between Auto, Direct, and Queued connection types in Qt?

Auto, Direct, and Queued connection types in Qt determine how signals invoke slots. Direct calls immediately, Queued posts to the receiver's event loop, and Auto selects based on the thread context.

Why are my Qt signals not triggering connected slots during execution?

Qt signals fail to trigger connected slots due to incorrect syntax, mismatched signatures, or disconnected objects. Debugging involves verifying connection statements and ensuring lambda captures are correct.