explaingit

feiyangqingyun/qwidgetdemo

6,890C++Audience · developerComplexity · 3/5Setup · moderate

TLDR

A collection of over 100 standalone Qt C++ demo projects covering custom widgets, utility tools, video playback, and UI styling, aimed at developers learning desktop app development with Qt.

Mindmap

mindmap
  root((qwidgetdemo))
    What it is
      100+ Qt demo projects
      Each self-contained
      Learning resource
    Demo Categories
      Custom controls
      Utility tools
      Video playback
      UI styling
    Tech Stack
      C++
      Qt framework
      FFmpeg and VLC
    Platform Support
      Windows
      Linux
      macOS
    Audience
      Qt beginners
      Desktop developers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Learn how to build a specific Qt widget by running and reading the matching self-contained demo project.

USE CASE 2

Copy a working serial port debugger or network tool from the demos and adapt it to your own desktop application.

USE CASE 3

Use the video monitoring or FFmpeg playback demo as a starting point for adding video display to a Qt app.

Tech stack

C++QtFFmpegVLC

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Qt 4.6 to 6.6 installed, README and code comments are written in Chinese.

In plain English

QWidgetDemo is a collection of more than 100 small, independent C++ demo projects built with Qt, a framework for creating desktop application windows and user interfaces. Each demo covers one specific topic and can be compiled and run on its own, making the collection useful as a reference or learning resource for developers getting started with Qt. The demos are grouped into several categories. The control group includes custom interface elements like a battery charge indicator, a navigation button, an IP address input field, a smooth curve display, and a CPU and memory usage label. The tool group covers small utility programs such as a serial port debugger, a network debugger, a Base64 image converter, a code line counter, an email sender, and a secret key generator. The video group demonstrates video monitoring layouts and video playback using external libraries including FFmpeg, VLC, and MPV. The widget group includes a color picker, a frameless window template, a GIF screen recorder, a lunar calendar widget, and a screen capture tool. The ui group focuses on visual styling, with examples of flat design themes, icon font helpers, and various styled interface layouts. There are also demos for third-party integrations, including a chart library called QCustomPlot, and demos contributed by community members covering features like image cropping and slide puzzle captchas. All projects have been tested against Qt versions 4.6 through 6.6 on Windows, Linux, macOS, and the UOS operating system. A few demos do not support Qt 6 and are skipped automatically when compiling the full collection. The repository recommends downloading via git rather than as a ZIP file to avoid extraction errors. The README is written in Chinese and is aimed at developers learning Qt through practical, focused examples. The code is described as clean and well-commented. The author requests no monetary tips and asks instead for comments and feedback.

Copy-paste prompts

Prompt 1
Show me how the QWidgetDemo battery indicator widget is implemented in Qt C++ and walk me through the custom painting code.
Prompt 2
Using the QWidgetDemo serial port debugger as a reference, write a Qt C++ widget that sends and receives data over a COM port.
Prompt 3
How does QWidgetDemo implement a frameless window in Qt? Give me the key code and explain how to drag and resize it without a title bar.
Prompt 4
Using the QWidgetDemo flat UI theme examples, show me how to apply a dark stylesheet to a QMainWindow and its child widgets.
Open on GitHub → Explain another repo

← feiyangqingyun on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.