topic logo

Qt ⇢ Topic Index

GUI application programming with the Qt framework

Topic Description

Qt is a cross-platform application development framework that builds on C++. It is made with application developers in mind and has excellent documentation and a comprehensive library. It's easy and fun to develop with. It supports all major desktop and mobile platforms.


basic difficulty

Introductory units about the Qt framework. Elaborate on the structure of a Qt application, basic data types, how layouts work and what widgets are available.

  • Unit 1 - Hello World!

    first application

    A simple GUI application that prints the message 'Hello World!'.

  • Unit 2 - Push Me!

    an interactive button

    A button that shows a popup message when clicked. This unit introduces object communication.

  • Unit 3 - Layout Essentials

    vertical layout and stylesheets

    First of the layout units. Explains how to create a simple layout that positions a few labels on the screen.

  • Unit 4 - Message Boxes

    information, warnings, criticals and questions

    Demonstrate all four message box types.

  • Unit 5 - Trigger Delayed Actions

    make things happen after a timeout

    Introduces the QTimer class, that emits one-time or repeated signals.

  • Unit 6 - More on Layouts

    vertical, horizontal and grid

    Introduce horizontal and grid layouts and demonstrate how they work.

  • Unit 7 - Margin and Spacing

    third layout unit

    Shows how to change the spacing between and around layout items.

  • Unit 8 - Matroska

    nested layouts and widgets

    With this method complex application layouts can be realized while keeping the code readable.

  • Unit 9 - Form Layout

    the fourth layout type

    Form layouts are a quick way to make linked two column layouts.

  • Unit 10 - Huston, come in!


    A radio button is a common control type that provides exclusive selection states.

  • Unit 11 - Checkboxes

    multiple choice selections

    A checkbox is a non-exclusive state button that can be checked and unchecked.

  • Unit 12 - Sliders

    all the widgets with range values

    This unit introduces a set of widgets that set or display a value within a range.

  • Unit 13 - QLineEdit


    Introducing the slots of the QLineEdit widget.

  • Unit 14 - QLineEdit


    This unit introduces the QLineEdit widget's signals.

  • Unit 15 - QLineEdit

    input masks and validators

    Shows how to apply an input mask or validator to a QLineEdit widget to constrain accepted input values.

  • Unit 16 - QLineEdit

    completers and attributes

    Shows how to enable auto-complete and the remaining attributes of the QLineEdit class.