QML

18-10-2023

QML
Тип

Парадигма программирования Декларативное программирование Скриптовый язык

Разработчик

Nokia

Операционная система

Кроссплатформенный

Последняя версия

4.8.2[1]

Сайт

http://developer.qt.nokia.com/doc/qt-4.8/qtquick.html

QML
Расширение

.qml

Тип формата

Скриптовый язык

QML (Qt Meta-Object Language) - это декларативный язык программирования, основанный на JavaScript, предназначенный для дизайна приложений, делающих основной упор на пользовательский интерфейс[2]. Является частью Qt Quick, среды разработки пользовательского интерфейса, распространяемой вместе с Qt. В основном используется для создания приложений, ориентированных на мобильные устройства с сенсорным управлением.

QML-документ представляет собой дерево элементов. QML элемент[3], так же, как и элемент Qt, представляет собой совокупность блоков: графических (таких, как rectangle, image) и поведенческих (таких, как state, transition, animation). Эти элементы могут быть объединены, чтобы построить комплексные компоненты, начиная от простых кнопок и ползунков и заканчивая полноценными приложениями, работающими с Internet.

QML элементы могут быть дополнены стандартными JavaScript вставками путем встраивания .js файлов. Также они могут быть расширены C++ компонентами через Qt framework.

Содержание

Синтаксис, семантика

Пример:

import QtQuick 1.0
 
 Rectangle {
     id: canvas
     width: 200
     height: 200
     color: "blue"
 
     Image {
         id: logo
         source: "pics/logo.png"
         anchors.centerIn: parent
         x: canvas.height / 5
     }
 }

Объекты задаются их типом, указанным перед парой фигурных скобок. Типы объектов всегда начинаются с заглавной буквы. В вышеупомянутом примере есть два объекта: Rectangle и Image. Внутри фигурных скобок можно задать информацию об объекте, например, его свойства. Свойства задаются в виде <свойство>: <значение>. В этом примере у объекта Image есть свойство source, которому присвоено значение "pics/logo.png". Свойство и его значение разделяются двоеточием.

Инструменты разработки

Так как QML и JavaScript очень похожи, то любые среды разработки, поддерживающие JavaScript, могут быть использованы для работы с QML. Также полная поддержка подсветки синтаксиса, автозавершение кода, встроенная справочная система доступны в кросс-платформенной среде разработки Qt Creator IDE 2.1.

Примечания

  1. Qt 4.8.2 Released (22 May 2012).
  2. GettingStartedQMLRussian | Qt Wiki | Qt Developer Network
  3. Qt 4.7: QML Elements. Doc.qt.nokia.com. Проверено 22 сентября 2010.

Ссылки

  • Введение в QML  (рус.)
  • QML примеры и Демо  (англ.)
  • Qt Labs блог, связанный с QML  (англ.)
  • обучение QML  (англ.)
  • Статьи о разработке на QML  (рус.)
  • Экспорт дизайна интерфейсов из Gimp в Qml  (рус.)

QML.

© 2011–2023 stamp-i-k.ru, Россия, Барнаул, ул. Анатолия 32, +7 (3852) 15-49-47