Qt Quick QML Types

The Qt Quick module provides graphical primitive types. These types are only available in a QML document if that document imports the QtQuick namespace.

The current version of the QtQuick module is version 2.5, and thus it may be imported via the following statement:

import QtQuick 2.5

Visit the Qt Quick module documentation for more information about the concepts which are central to QtQuick.

Submodules

Qt Quick includes several submodules which contain additional types.

  • XML List Model - contains types for creating models from XML data
  • Local Storage - a submodule containing a JavaScript interface for an SQLite database
  • Particles - provides a particle system for QML applications
  • Window - contains types for creating top-level windows and accessing screen information
  • Dialogs - contains types for creating and interacting with system dialogs
  • Controls - provides a set of reusable UI components
  • Layouts - contains types that are used to arrange items in the user interface
  • Tests - types for testing QML applications.

Basic Types

There are a number of basic types that are supported by default in the QML language.

In addition, the QtQuick import provides the following basic types:

date

Date value

point

Value with x and y attributes

rect

Value with x, y, width and height attributes

size

Value with width and height attributes

color

ARGB color value. The color type refers to an ARGB color value. It can be specified in a number of ways:

font

Font value with the properties of QFont. The font type refers to a font value with the properties of QFont

matrix4x4

A matrix4x4 type is a 4-row and 4-column matrix

quaternion

A quaternion type has scalar, x, y, and z attributes

vector2d

A vector2d type has x and y attributes

vector3d

Value with x, y, and z attributes

vector4d

A vector4d type has x, y, z and w attributes

Object Types

All object types provided by the QtQuick import are based on the Item type, which itself derives from QtObject. QML object types provided by the Qt QML module (such as QtObject and Component) are also available when you import QtQuick.

Canvas

Provides a 2D canvas item enabling drawing via JavaScript

CanvasGradient

Provides an opaque CanvasGradient interface

CanvasImageData

Contains image pixel data in RGBA order

CanvasPixelArray

Provides ordered and indexed access to the components of each pixel in image data

Context2D

Provides 2D context for shapes on a Canvas item

Accessible

Enables accessibility of QML items

AnimatedImage

Plays animations stored as a series of images

AnimatedSprite

Draws a sprite animation

BorderImage

Paints a border based on an image

Drag

For specifying drag and drop events for moved Items

DragEvent

Provides information about a drag event

DropArea

For specifying drag and drop handling in an area

KeyEvent

Provides information about a key event

MouseEvent

Provides information about a mouse event

WheelEvent

Provides information about a mouse wheel event

Flickable

Provides a surface that can be "flicked"

Flipable

Provides a surface that can be flipped

FocusScope

Explicitly creates a focus scope

GridView

For specifying a grid view of items provided by a model

Image

Displays an image

EnterKey

Provides a property to manipulate the appearance of Enter key on an on-screen keyboard

Item

A basic visual QML type

KeyNavigation

Supports key navigation by arrow keys

Keys

Provides key handling to Items

LayoutMirroring

Property used to mirror layout behavior

Transform

For specifying advanced transformations on Items

AnchorAnimation

Animates changes in anchor values

ParentAnimation

Animates changes in parent values

PathAnimation

Animates an item along a path

ItemGrabResult

Contains the results from a call to Item::grabToImage()

ViewTransition

Specifies items under transition in a view

ListView

Provides a list view of items provided by a model

Loader

Allows dynamic loading of a subtree from a URL or Component

MouseArea

Enables simple mouse handling

MultiPointTouchArea

Enables handling of multiple touch points

TouchPoint

Describes a touch point in a MultiPointTouchArea

OpenGLInfo

Provides information about the used OpenGL version

PathView

Lays out model-provided items on a path

PinchArea

Enables simple pinch gesture handling

PinchEvent

For specifying information about a pinch event

Column

Positions its children in a column

Flow

Positions its children side by side, wrapping as necessary

Grid

Positions its children in grid formation

Positioner

Provides attached properties that contain details on where an item exists in a positioner

Row

Positions its children in a row

Gradient

Defines a gradient fill

GradientStop

Defines the color at a position in a Gradient

Rectangle

Paints a filled rectangle with an optional border

Repeater

Instantiates a number of Item-based components using a provided model

ShaderEffect

Applies custom shaders to a rectangle

GridMesh

Defines a mesh with vertices arranged in a grid

ShaderEffectSource

Renders a Qt Quick item into a texture and displays it

Sprite

Specifies sprite animations

SpriteSequence

Draws a sprite animation

AnchorChanges

Specifies how to change the anchors of an item in a state

ParentChange

Specifies how to reparent an Item in a state change

Text

Specifies how to add formatted text to a scene

TextEdit

Displays multiple lines of editable formatted text

TextInput

Displays an editable line of text

Matrix4x4

Provides a way to apply a 4x4 tranformation matrix to an Item

Rotation

Provides a way to rotate an Item

Scale

Provides a way to scale an Item

Translate

Provides a way to move an Item without changing its x or y properties

Animation

Is the base of all QML animations

ColorAnimation

Animates changes in color values

NumberAnimation

Animates changes in qreal-type values

ParallelAnimation

Enables animations to be run in parallel

PauseAnimation

Provides a pause for an animation

PropertyAction

Specifies immediate property changes during animation

PropertyAnimation

Animates changes in property values

RotationAnimation

Animates changes in rotation values

ScriptAction

Defines scripts to be run during an animation

SequentialAnimation

Allows animations to be run sequentially

Vector3dAnimation

Animates changes in QVector3d values

AnimationController

Enables manual control of animations

Animator

Is the base of all QML animators

OpacityAnimator

Type animates the opacity of an Item

RotationAnimator

Type animates the rotation of an Item

ScaleAnimator

Type animates the scale factor of an Item

UniformAnimator

Type animates a uniform of a ShaderEffect

XAnimator

Type animates the x position of an Item

YAnimator

Type animates the y position of an Item

Behavior

Defines a default animation for a property change

FontLoader

Allows fonts to be loaded by name or URL

FontMetrics

Provides metrics for a given font

Path

Defines a path for use by PathView

PathArc

Defines an arc with the given radius

PathAttribute

Specifies how to set an attribute at a given position in a Path

PathCubic

Defines a cubic Bezier curve with two control points

PathCurve

Defines a point on a Catmull-Rom curve

PathElement

The base path type

PathLine

Defines a straight line

PathPercent

Manipulates the way a path is interpreted

PathQuad

Defines a quadratic Bezier curve with a control point

PathSvg

Defines a path using an SVG path data string

PathInterpolator

Specifies how to manually animate along a path

PropertyChanges

Describes new property bindings or values for a state

Shortcut

Provides keyboard shortcuts

SmoothedAnimation

Allows a property to smoothly track a value

SpringAnimation

Allows a property to track a value in a spring-like motion

State

Defines configurations of objects and properties

StateChangeScript

Specifies how to run a script in a state

StateGroup

Provides built-in state support for non-Item types

SystemPalette

Provides access to the Qt palettes

TextMetrics

Provides metrics for a given font and text

Transition

Defines animated transitions that occur on state changes

DoubleValidator

Defines a validator for non-integer numbers

IntValidator

Defines a validator for integer values

RegExpValidator

Provides a string validator

© 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.