codefest 2011. Труфанов А. — qt quick. Возможности для дизайнера...

Post on 11-May-2015

1.569 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Qt Quickвозможности

для дизайнера и разработчика

Александр ТруфановSenior Technical ConsultantForum Nokia

alexander.trufanov@nokia.com март, 2011

© 2010 Nokia

Почему Qt• Qt (”кьют”) кроссплатформенный C++ фреймворк для разработки приложений

• Qt имитирует родной стиль при отрисовке UI

– Элементы UI передают оригинальный

look & feel

– Может быть адоптирован разработчиком

• Построе на низкоуровневых API платформы

– Не runtime!

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

– Один код для всех платформ

– Требуется лишь перекомпиляция

© 2010 Nokia

Qt 4.7.2• Qt 4.7: уже доступен!

– Включает в себя Qt Quick

– Интегрирует части Qt Mobility 1.1.1

– Сфокусирован на производительности

• http://qt.nokia.com/developer/qt-roadmap

© 2010 Nokia

Qt Quick (Qt User Interface Creation Kit)• Создавайте UI как дизайнер

– Без знания C++

– Исользуя язык QML

(расширение над JavaScript)

– При помощи визуальных

инструментов

– Модуль: Declarative UI

– Поддержка SVG, XHR, HTML5

Web DB

© 2010 Nokia

Photoshop to QML exporter

© 2010 Nokia

QML• UI описывается структурой элементов

– Значения свойств пересчитываются динамически

– Связь посредством

сигналов и слотов

– Взаимодействие с C++ кодом возможно

– Aнимирование свойст при помощи

состояний и переходов

Rectangle{

width: 200

height: 200

color: "white"

Image {

source: "pics/logo.png"

anchors.centerIn: parent

}

}

© 2010 Nokia

QML – мета-объектный язык Qt

10 LOC

130 LOC

© 2010 Nokia

Использование Qt Declarative и QML• Запуск qml при помощи qmlviewer

• Либо встраивание в Qt приложение:

© 2010 Nokia

Интеграция с существующим UI• UI на основе QWidget

• UI на основе QGraphicsView:

© 2010 Nokia

Интеграция с С++ кодом• Возможность создания C++ плагинов для qml

• Взаимодействие при помощи контекстных свойств и объектов:

• Сигналы при изменении свойств контекстных объектов.

• Вызов public слотов и Q_INVOKABLE методов объектов из QML.

• Прямой вызов javascript функций

© 2010 Nokia

Qt Quick Components

http://gitorious.org/qt-components

V#-Filename.ppt / 3/18/2011 © 2009 Nokia 12

top related