Qt Quick Examples and Tutorials

Building UIs with QML

Qt includes several examples to demonstrate a particular usage. The examples run as applications or as non-GUI examples in Qt Creator. Qt tutorials show the step-by-step information and give insight to particular code snippets.

This page lists the Qt Qml and Qt Quick examples, however, many other Qt modules contain examples related to their QML API.

Running the Examples and Demos

The examples are packaged with the Qt installers and are accessed through Qt Creator. For more information about running examples in Qt Creator, visit the Building and Running an Example page.

Open and run examples within Qt Creator’s Welcome mode. Most of the examples run on various platforms and to search for platform-specific examples, type the platform name (or any keywords) in the search field. For example, typing mobile in the search field lists the examples that are fully compatible with the mobile platforms.

To view other examples and tutorials, visit the Qt Examples And Tutorials page.

Qt Quick Demos

Here is a list of fully-functional demo applications. They are full applications that show how a deployable Qt application is built and structured. Many of the demos are deployable to mobile and desktop platforms.

Developing Qt Quick Applications

The following pages show how to develop Qt applications using Qt Creator and Qt Quick. The pages demonstrate various steps such as use cases and introductory material. For more information about Qt Quick Applications and related modules, visit the QML Applications page.

Development Environment

  • Creating Qt Quick Projects

  • Using QML Modules with Plugins

Beginning with QML and Qt Quick

  • First Steps with QML

  • Alarms Application

  • Qt Design Studio Tutorials

  • SameGame

Use Cases

  • Visual types in QML

  • Responding to User Input in QML

  • Animations in QML

  • Displaying Text in QML

  • Layouts in QML

  • Style and Theme Support

  • Integrating JavaScript in QML

Extending QML

The following tutorials show how a QML-based application can be combined and exteneded with C++ code using the Qt Qml module.

  • Writing QML Extensions with C++

  • Writing advanced QML Extensions with C++

Examples

Examples are small applications which show how to implement various Qt Quick features. The examples run on various platforms and are opened from within Qt Creator.

QML Types and Controls

  • Controls Gallery

  • TableView

  • Text and Fonts

  • Qt Quick Controls - Table of Contents

Layouts and Views

  • Qt Quick Layouts - Basic Example

  • Qt Quick Layouts - Responsive Layout Example

  • Positioners

  • Views

  • Windows and Screen

Image and Graphics

  • Image Elements

  • Animation

  • Canvas API

  • Shader Effects

  • MultiEffect

  • MultiEffect-based Item Transitions

Shapes

  • Shapes

  • Weather Forecast

Keyboard, Focus, and Touch

  • Key Interaction

  • Pointer Handlers

System and Events

  • Accessibility

  • Drag and Drop

  • Item Variable Refresh Rate

Scene Graph

  • Custom Material

  • Portable QRhi-based 3D rendering as a scene underlay

  • Displaying a QRhi-rendered image in a QQuickItem

  • Implementing a QRhi-based QSGRenderNode

  • Redirecting Qt Quick rendering into a QRhiTexture

  • Texture Providers and Materials

  • Custom Geometry

  • Graph

Extending the Scene Graph using native 3D APIs

  • Vulkan-based 3D rendering as a scene underlay

  • Implementing a custom QQuickItem that displays a native Vulkan image

  • Metal-based 3D rendering as a scene underlay

  • Implementing a custom QQuickItem that displays a native Metal texture

  • Direct3D 11-based rendering as a scene underlay

  • OpenGL-based rendering as a scene underlay

  • Redirecting Qt Quick rendering into an OpenGL texture

  • Redirecting Qt Quick rendering into a Direct 3D texture

Adding Qt Quick scenes in QWidget applications

  • Using QQuickWidget

  • QQuickWidget - QQuickView Comparison (OpenGL)

  • Embedding a QQuickView as Native Window

Qt Quick for Android

  • Qt Quick for Android Studio Projects

  • Exposing QtAbstractListModel to QML

  • Using QtAbstractItemModel in Android Studio Projects