Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qtquick.qdoc
Go to the documentation of this file.
1// Copyright (C) 2017 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
3
4/*!
5\page qtquick-index.html
6\title Qt Quick
7\brief The Qt Quick module implements the "standard library" for QML
8
9The Qt Quick module is the standard library for writing QML applications.
10While the \l{Qt Qml} module provides the QML engine and
11language infrastructure, the Qt Quick module provides all the basic
12types necessary for creating user interfaces with QML. It
13provides a visual canvas and includes types for creating and animating
14visual components, receiving user input, creating data models and views
15and delayed object instantiation.
16
17The Qt Quick module provides both a \l{Qt Quick QML Types}{QML API}, which
18supplies QML types for creating user interfaces with the QML language, and a
19\l{Qt Quick C++ Classes}{C++ API} for extending QML applications with C++ code.
20
21\note A set of Qt Quick-based UI controls is also available to create user
22interfaces. See \l{Qt Quick Controls} for more information.
23
24If you're new to QML and Qt Quick, please see \l{QML Applications} for an
25introduction to writing QML applications.
26
27\section1 Using the Module
28
29\section2 QML API
30
31\include {module-use.qdocinc} {using the qml api} {QtQuick}
32
33\section2 C++ API
34
35\include {module-use.qdocinc} {using the c++ api}
36
37\section3 Building with CMake
38
39\include {module-use.qdocinc} {building with cmake} {Quick}
40
41\section3 Building with qmake
42
43\include {module-use.qdocinc} {building_with_qmake} {quick}
44
45\section1 Important Concepts in Qt Quick
46
47Qt Quick provides everything you need to create a rich application with a fluid
48and dynamic user interface. It enables you to build user interfaces around the
49behavior of user interface components and how they connect with one another,
50and it provides a visual canvas with its own coordinate system and rendering
51engine. Animation and transition effects are first class concepts in Qt Quick,
52and you can add visual effects through specialized components for particle and
53shader effects.
54
55\list
56 \li \l {Important Concepts In Qt Quick - The Visual Canvas}
57 {The Visual Canvas}
58 \li \l {Important Concepts In Qt Quick - User Input} {User Input}
59 \li \l {Important Concepts In Qt Quick - Positioning} {Positioning}
60 \li \l {Important Concepts in Qt Quick - States, Transitions and Animations}
61 {States, Transitions And Animations}
62 \li \l {Important Concepts In Qt Quick - Data - Models, Views and data Storage}
63 {Data - Models, Views and Data Storage}
64 \li \list \l {Important Concepts In Qt Quick - Graphical Effects}
65 {Particles And Graphical Effects}
66 \li \l MultiEffect
67 \endlist
68 \li \l {Important Concepts In Qt Quick - Convenience Types}
69 {Convenience Types}
70\endlist
71
72When using the Qt Quick module, you will need to know how to write QML
73applications using the QML language. In particular, QML Basics and QML
74Essentials from the \l{QML Applications} page.
75
76To find out more about using the QML language, see the \l{Qt Qml} module documentation.
77
78\section1 C++ Extension Points
79
80\list
81 \li \l {C++ Extension Points Provided By Qt Quick}
82 {C++ Extension Points}
83 \list
84 \li \l {user-defined-qquickitem-derived-types}
85 {Creating User-Defined QQuickItem-Derived Types}
86 \li \l {scene-graph-related-classes}
87 {Scene Graph-Related Classes}
88 \li \l {pixmap-and-threaded-image-support}
89 {Pixmap and Threaded Image Support}
90 \endlist
91\endlist
92
93\section1 Articles and Guides
94
95\list
96 \li \l {Best Practices for QML and Qt Quick} {Qt Quick Guidelines}
97 \li \l {Qt Quick Tools and Utilities}
98
99 Further information for writing QML applications:
100 \list
101 \li \l {QML Applications}
102 - essential information for application development with QML and Qt
103 Quick
104 \li \l {Qt Qml}
105 - documentation for the Qt QML module, which provides the QML engine
106 and language infrastructure
107 \li \l {Qt Quick How-tos}
108 - shows how to achieve specific tasks in Qt Quick
109 \endlist
110\endlist
111
112\section1 Examples
113
114\list
115 \li \l {Qt Quick Examples and Tutorials}
116\endlist
117
118\section1 Reference
119
120\list
121 \li \l {Qt Quick C++ Classes}
122 - the C++ API provided by the Qt Quick module
123 \li \l {Qt Quick QML Types}
124 - a list of QML types provided by the \c{QtQuick} import
125 \list
126 \li \l {Qt Quick Effects QML Types} {Effects}
127 - provides graphical effects to apply to Qt Quick items
128 \li \l {Qt Quick Local Storage QML Types} {Local Storage}
129 - a submodule containing a JavaScript interface for an SQLite
130 database
131 \li \l {Qt Quick Particles QML Types} {Particles}
132 - provides a particle system for Qt Quick
133 \li \l {Qt Quick Layouts} {Layouts}
134 - provides layouts for arranging Qt Quick items
135 \li \l {Qt Quick Test QML Types} {Tests}
136 - contains types for writing unit test for a QML application
137 \li \l{Qt Quick Shapes QML Types}{Shapes}
138 - provides types for rendering vector shapes in a Qt Quick scene.
139 \li \l{Qt Quick Vector Image QML Types}{Vector Image} - provides types for displaying
140 vector image files.
141 \endlist
142 \li \l {Qt Quick Android Classes}
143 - provides classes for using QML with Java/Kotlin Android APIs.
144\endlist
145
146\section1 Qt Academy Courses
147 \list
148 \li \l {https://www.qt.io/academy/course-catalog#introduction-to-qt-quick}
149 {Introduction to Qt Quick}
150 \endlist
151
152
153\section1 Licenses and Attributions
154
155Qt Quick is available under commercial licenses from \l{The Qt Company}.
156In addition, it is available under free software licenses. Since Qt 5.4,
157these free software licenses are
158\l{GNU Lesser General Public License, version 3}, or
159the \l{GNU General Public License, version 2}.
160See \l{Qt Licensing} for further details.
161*/