Spec-Zone.ru › Qt 5.13

Тип Qt QML

Предоставляет глобальный объект с полезными перечислениями и функциями из Qt. Подробнее...

Заявление об импорте: import QtQml 2.13
  • Список всех членов, включая унаследованные
  • Устаревшие члены

Свойства

  • application : object
  • inputMethod : object
  • platform : object
  • styleHints : object

Методы

  • строка atob(данные)
  • binding(функция)
  • строка btoa(данные)
  • callLater(функция, аргумент1, аргумент2, ...)
  • callLater(функция)
  • цвет colorEqual(lhs, строка rhs)
  • объект createComponent(url, режим, родитель)
  • объект createQmlObject(qml, объект родитель, строка путь_к_файлу)
  • цвет darker(базовыйЦвет, вещественное коэффициент)
  • exit(кодВозврата)
  • font(спецификация_шрифта)
  • список<строка> fontFamilies()
  • строка formatDate(дата, вариант формат)
  • строка formatDateTime(дата_и_время, вариант формат)
  • строка formatTime(время, вариант формат)
  • цвет hsla(оттенок, вещественное насыщенность, вещественное светлота, вещественное альфа)
  • цвет hsva(оттенок, вещественное насыщенность, вещественное значение, вещественное альфа)
  • логическое isQtObject(объект)
  • цвет lighter(базовыйЦвет, вещественное коэффициент)
  • locale(имя)
  • строка md5(данные)
  • matrix4x4(m11, вещественное m12, вещественное m13, вещественное m14, вещественное m21, вещественное m22, вещественное m23, вещественное m24, вещественное m31, вещественное m32, вещественное m33, вещественное m34, вещественное m41, вещественное m42, вещественное m43, вещественное m44)
  • логическое openUrlExternally(цель)
  • точка point(x, целое y)
  • строка qsTr(исходныйТекст, строка разъяснение, целое n)
  • строка qsTrId(id, целое n)
  • строка qsTrIdNoOp(id)
  • строка qsTrNoOp(исходныйТекст, строка разъяснение)
  • строка qsTranslate(контекст, строка исходныйТекст, строка разъяснение, целое n)
  • строка qsTranslateNoOp(контекст, строка исходныйТекст, строка разъяснение)
  • quaternion(скаляр, вещественное x, вещественное y, вещественное z)
  • quit()
  • прямоугольник rect(x, целое y, целое ширина, целое высота)
  • url resolvedUrl(url)
  • цвет rgba(красный, вещественное зеленый, вещественное синий, вещественное альфа)
  • size(ширина, целое высота)
  • цвет tint(базовыйЦвет, цвет оттенок)
  • vector2d(x, вещественное y)
  • vector3d(x, вещественное y, вещественное z)
  • vector4d(x, вещественное y, вещественное z, вещественное w)

Подробное описание

Объект Qt — это глобальный объект с полезными функциями, свойствами и перечислениями.

Он не подлежит экземпляризации; для его использования вызывайте члены глобального объекта Qt напрямую. Например:

import QtQuick 2.0

Text {
    color: Qt.rgba(1, 0, 0, 1)
    text: Qt.md5("hello, world")
}

Перечисления

Объект Qt содержит перечисления, доступные в пространстве имен Qt. Например, вы можете получить значения перечислений Qt::LeftButton и Qt::RightButton как Qt.LeftButton и Qt.RightButton.

Типы

Объект Qt также содержит вспомогательные функции для создания объектов определенных типов данных. Это, в первую очередь, полезно при установке свойств элемента, когда свойство имеет один из следующих типов:

  • rect — используйте Qt.rect()
  • point — используйте Qt.point()
  • size — используйте Qt.size()

Если модуль QtQuick импортирован, для клиентов также доступны следующие вспомогательные функции для создания объектов определенных типов данных:

  • color — используйте Qt.rgba(), Qt.hsla(), Qt.darker(), Qt.lighter() или Qt.tint()
  • font — используйте Qt.font()
  • vector2d — используйте Qt.vector2d()
  • vector3d — используйте Qt.vector3d()
  • vector4d — используйте Qt.vector4d()
  • quaternion — используйте Qt.quaternion()
  • matrix4x4 — используйте Qt.matrix4x4()

Также существуют строковые конструкторы для этих типов. См. Основные типы QML для получения дополнительной информации.

Форматирование дат и времени

Объект Qt содержит несколько функций для форматирования значений QDateTime, QDate и QTime.

  • строка Qt.formatDateTime(дата_время, вариант формат)
  • строка Qt.formatDate(дата, вариант формат)
  • строка Qt.formatTime(время, вариант формат)

Спецификация формата описана в Qt.formatDateTime.

Динамическое создание объектов

Следующие функции глобального объекта позволяют динамически создавать QML-элементы из файлов или строк. См. Динамическое создание QML-объектов из JavaScript для обзора их использования.

  • объект Qt.createComponent(url)
  • объект Qt.createQmlObject(строка qml, объект родитель, строка путь_к_файлу)

Другие функции

На объекте Qt также есть следующие функции.

  • Qt.quit()
  • Qt.md5(строка)
  • строка Qt.btoa(строка)
  • строка Qt.atob(строка)
  • объект Qt.binding(функция)
  • объект Qt.locale()
  • строка Qt.resolvedUrl(строка)
  • Qt.openUrlExternally(строка)
  • список<строка> Qt.fontFamilies()

Документация по свойствам

application : объект

Объект application предоставляет доступ к глобальным свойствам состояния приложения, используемым многими QML-компонентами.

Его свойства:

application.active Устаревшее, используйте Qt.application.state == Qt.ApplicationActive вместо этого.
application.state Это только для чтения свойство, которое указывает текущее состояние приложения.

Возможные значения:

  • Qt.ApplicationActive - приложение является самым верхним и фокусированным, и пользователь может взаимодействовать с приложением.
  • Qt.ApplicationInactive - приложение видно или частично видно, но не выбрано для отображения впереди, пользователь не может взаимодействовать с приложением. На настольных платформах это обычно означает, что пользователь активировал другое приложение. На мобильных платформах этот статус чаще встречается, когда операционная система прерывает пользователя, например, входящими звонками, SMS-сообщениями или диалогами. Это обычно временное состояние, в котором приложение приостановлено. Пользователь может вернуть фокус вашему приложению, но чаще всего это будет первым признаком того, что приложение будет приостановлено. В этом состоянии рассмотрите возможность приостановки или остановки любой активности, которая не должна продолжаться, когда пользователь не может взаимодействовать с вашим приложением, такой как видео, игра, анимации или датчики. Также следует избегать выполнения задач, требующих интенсивной обработки ЦП, которые могут замедлить работу переднего приложения.
  • Qt.ApplicationSuspended - приложение приостановлено и не отображается пользователю. На мобильных платформах приложение обычно переходит в это состояние, когда пользователь возвращается к домашнему экрану или переключается на другое приложение. В этом состоянии приложение должно гарантировать, что пользователь воспринимает его как постоянно активное и не теряет прогресс, сохраняя любые постоянные данные. Приложение должно прекратить все действия и быть готовым к остановке выполнения кода. При приостановке приложение может быть закрыто в любое время без дальнейших предупреждений (например, при недостатке памяти, когда ОС принудительно удаляет приостановленные приложения).
  • Qt.ApplicationHidden - приложение скрыто и работает в фоновом режиме. Это нормальное состояние для приложений, которым необходимо выполнять фоновые задачи, например, воспроизводить музыку, в то время как пользователь взаимодействует с другими приложениями. При входе в это состояние приложение должно освободить все графические ресурсы. Приложение Qt Quick обычно не должно обрабатывать это состояние на уровне QML. Вместо этого вы должны загрузить весь пользовательский интерфейс и перезагрузить файлы QML всякий раз, когда приложение снова станет активным.
application.layoutDirection Это только для чтения свойство, которое можно использовать для запроса направления макета приложения по умолчанию. При запуске системы направление макета по умолчанию зависит от языка приложения. Свойство имеет значение Qt.RightToLeft в языковых наборах, где текст и графические элементы читаются справа налево, и Qt.LeftToRight в тех, где направление чтения слева направо. Вы можете привязать к этому свойству, чтобы настроить макеты вашего приложения для поддержки обоих направлений макета.

Возможные значения:

  • Qt.LeftToRight - элементы текста и графики должны располагаться слева направо.
  • Qt.RightToLeft - элементы текста и графики должны располагаться справа налево.
application.font Это только для чтения свойство содержит шрифт приложения по умолчанию, возвращаемый функцией QGuiApplication::font().
application.arguments Это список строк аргументов, с помощью которых был запущен исполняемый файл.
application.name Это имя приложения, заданное для экземпляра QCoreApplication. Это свойство можно изменять, чтобы установить имя приложения.
application.displayName (с Qt 5.9) Это отображаемое имя приложения, заданное для экземпляра QGuiApplication. Это свойство можно изменять, чтобы установить отображаемое имя приложения.
application.version Это версия приложения, заданная для экземпляра QCoreApplication. Это свойство можно изменять, чтобы установить версию приложения.
application.organization Это имя организации, заданное для экземпляра QCoreApplication. Это свойство можно изменять, чтобы установить имя организации.
application.domain Это домен организации, заданный для экземпляра QCoreApplication. Это свойство можно изменять, чтобы установить домен организации.
application.supportsMultipleWindows Это только для чтения свойство, которое можно использовать для определения поддерживает ли платформа несколько окон. Например, некоторые встроенные платформы не поддерживают несколько окон.
application.screens Массив, содержащий описания всех подключенных экранов. Элементы массива — объекты с теми же свойствами, что и прикрепленный объект Screen. На практике массив соответствует списку экранов, возвращаемому функцией QGuiApplication::screens(). Помимо проверки свойств, таких как имя, ширина, высота и т. д., элементы массива также могут быть назначены свойству screen элементов Window, служа альтернативой функции QWindow::setScreen() со стороны C++. Это свойство добавлено в Qt 5.9.

Объект также имеет один сигнал, aboutToQuit(), который такой же, как QCoreApplication::aboutToQuit().

В следующем примере используется объект application для указания, активен ли приложение в данный момент:

import QtQuick 2.0

Rectangle {
    width: 300; height: 55
    color: Qt.application.active ? "white" : "lightgray"
    Text {
        text: "Application " + (Qt.application.active ? "active" : "inactive")
        opacity: Qt.application.active ? 1.0 : 0.5
        anchors.centerIn: parent
    }
}

Обратите внимание, что при использовании QML без QGuiApplication, следующие свойства будут не определены:

  • application.active
  • application.state
  • application.layoutDirection
  • application.font

Это свойство было введено в Qt 5.1.

См. также Screen, Window и Window.screen.

inputMethod : object

Объект inputMethod позволяет получить доступ к объекту QInputMethod приложения и всем его свойствам и слотам. Для получения дополнительной информации см. документацию по QInputMethod.

Это свойство было введено в Qt 5.0.

platform : object

Объект platform предоставляет информацию об основной платформе.

Его свойства:

platform.os Это только для чтения свойство содержит имя операционной системы.

Возможные значения:

  • "android" - Android
  • "ios" - iOS
  • "tvos" - tvOS
  • "linux" - Linux
  • "osx" - macOS
  • "qnx" - QNX (с Qt 5.9.3)
  • "unix" - Другая Unix-подобная ОС
  • "windows" - Windows
  • "winrt" - WinRT / UWP
platform.pluginName Это имя платформы, заданное для экземпляра QGuiApplication, как возвращается функцией QGuiApplication::platformName()

Это свойство было введено в Qt 5.1.

styleHints : object

Объект styleHints предоставляет платформоспецифичные подсказки и настройки стиля. Для получения дополнительной информации см. документацию по QStyleHints.

Примечание: Объект styleHints доступен только при использовании модуля Qt Quick.

В следующем примере используется объект styleHints для определения, должен ли элемент получить фокус при нажатии мыши или отпускании сенсорного экрана:

import QtQuick 2.4

MouseArea {
    id: button

    onPressed: {
        if (!Qt.styleHints.setFocusOnTouchRelease)
            button.forceActiveFocus()
    }
    onReleased: {
        if (Qt.styleHints.setFocusOnTouchRelease)
            button.forceActiveFocus()
    }
}

Это свойство было введено в Qt 5.5.

Документация по методам

callLater(function)

Используйте эту функцию для устранения избыточных вызовов функции или сигнала.

Функция, переданная в качестве первого аргумента в Qt.callLater(), будет вызвана позже, как только движок QML вернется в цикл событий.

Если эта функция вызывается несколько раз подряд с той же функцией в качестве первого аргумента, эта функция будет вызвана только один раз.

Например:

import QtQuick 2.0

Rectangle {
    width: 480
    height: 320

    property int callsToUpdateMinimumWidth: 0
    property bool optimize: true

    property int currentTextModel: 0
    property var columnTexts: [
        ["Click on either", "rectangle above", "and note how the counter", "below updates", "significantly faster using the", "regular (non-optimized)", "implementation"],
        ["The width", "of this column", "is", "no wider than the", "widest item"],
        ["Note how using Qt.callLater()", "the minimum width is", "calculated a bare-minimum", "number", "of times"]
    ]

    Text {
        x: 20; y: 280
        text: "Times minimum width has been calculated: " + callsToUpdateMinimumWidth
    }

    Row {
        y: 25; spacing: 30; anchors.horizontalCenter: parent.horizontalCenter
        Rectangle {
            width: 200; height:  50; color: "lightgreen"
            Text { text: "Optimized behavior\nusing Qt.callLater()"; anchors.centerIn: parent }
            MouseArea { anchors.fill: parent; onClicked: { optimize = true; currentTextModel++ } }
        }
        Rectangle {
            width: 200; height:  50; color: "lightblue"
            Text { text: "Regular behavior"; anchors.centerIn: parent}
            MouseArea { anchors.fill: parent; onClicked: { optimize = false; currentTextModel++ } }
        }
    }

    Column {
        id: column
        anchors.centerIn: parent

        onChildrenChanged: optimize ? Qt.callLater(updateMinimumWidth) : updateMinimumWidth()

        property int widestChild
        function updateMinimumWidth() {
            callsToUpdateMinimumWidth++
            var w = 0;
            for (var i in children) {
                var child = children[i];
                if (child.implicitWidth > w) {
                    w = child.implicitWidth;
                }
            }

            widestChild = w;
        }

        Repeater {
            id: repeater
            model: columnTexts[currentTextModel%3]
            delegate: Text {
                color: "white"
                text: modelData
                width: column.widestChild
                horizontalAlignment: Text.Center
                Rectangle { anchors.fill: parent; z: -1; color: index%2 ? "gray" : "darkgray" }
            }
        }
    }
}

Любые дополнительные аргументы, переданные в Qt.callLater(), будут переданы функции, вызываемой позже. Обратите внимание, что если дублирующиеся вызовы исключены, тогда только последний набор аргументов будет передан функции.

Эта документация была введена в Qt 5.8.

строка atob(данные)

ASCII в двоичный - эта функция декодирует строку данные, закодированную в формате base64, и возвращает ее.

binding(function)

Возвращает объект JavaScript, представляющий привязку свойства.

Существует два основных случая использования функции: во-первых, для применения привязки свойства императивно из кода JavaScript:

Item {
    property bool someCondition: true
    property int edgePosition

    Component.onCompleted: {
        if (someCondition == true) {
            // bind to the result of the binding expression passed to Qt.binding()
            edgePosition = Qt.binding(function() { return x + width })
        }
    }
}

и, во-вторых, для применения привязки свойства при инициализации значений свойств динамически созданных объектов (через Component.createObject() или Loader.setSource()).

Например, предполагая существование компонента DynamicText:

import QtQuick 2.0

Text {
    id: textElement
    width: 200
    height: 200
    text: "Default text"
    property string dynamicText: "Dynamic text"
    onTextChanged: console.log(text)
}

вывод из:

Item {
    id: root
    property string dynamicText: "Root text"

    Component.onCompleted: {
        var c = Qt.createComponent("DynamicText.qml")

        var obj1 = c.createObject(root, { 'text': Qt.binding(function() { return dynamicText + ' extra text' }) })
        root.dynamicText = "Modified root text"

        var obj2 = c.createObject(root, { 'text': Qt.binding(function() { return this.dynamicText + ' extra text' }) })
        obj2.dynamicText = "Modified dynamic text"
    }
}

и из:

Item {
    id: root
    property string dynamicText: "Root text"

    Loader {
        id: loaderOne
        onLoaded: root.dynamicText = "Modified root text"
    }

    Loader {
        id: loaderTwo
        onLoaded: item.dynamicText = "Modified dynamic text"
    }

    Component.onCompleted: {
        loaderOne.setSource("DynamicText.qml", { 'text': Qt.binding(function() { return dynamicText + ' extra text' }) })
        loaderTwo.setSource("DynamicText.qml", { 'text': Qt.binding(function() { return this.dynamicText + ' extra text' }) })
    }
}

должен быть:

Root text extra text
Modified root text extra text
Dynamic text extra text
Modified dynamic text extra text

Эта функция не может использоваться в объявлениях привязок свойств (см. документацию по объявлениям привязок и привязкам присваиваний), за исключением случаев, когда результат хранится в массиве, привязанном к свойству var.

Item {
    width: 50
    property var storedBindings: [ Qt.binding(function() { return x + width }) ] // stored
    property int a: Qt.binding(function() { return x + width }) // error!
    property int b

    Component.onCompleted: {
        b = storedBindings[0] // causes binding assignment
    }
}

Этот метод был введен в Qt 5.0.

строка btoa(данные)

Двоичное в ASCII - эта функция возвращает кодирование данных данные в формате base64.

Цвет colorEqual(lhs, строка rhs)

Возвращает true, если оба lhs и rhs дают равные значения цвета. Оба аргумента могут быть либо значениями цвета, либо значениями строк. Если задано значение строки, оно должно быть преобразуемо в цвет, как описано для базового типа цвет.

объект createComponent(url, mode, parent)

Возвращает объект Component, созданный с использованием QML-файла по указанному url, или null если была передана пустая строка.

Свойство Component::status возвращаемого компонента указывает, был ли компонент успешно создан. Если статус равен Component.Error, см. Component::errorString() для описания ошибки.

Если необязательный параметр mode установлен в Component.Asynchronous, компонент будет загружен в фоновом потоке. Свойство Component::status будет Component.Loading во время загрузки. Статус изменится на Component.Ready при успешной загрузке компонента или на Component.Error при неудачной загрузке. По умолчанию этот параметр равен Component.PreferSynchronous если опущен.

Если mode установлен в Component.PreferSynchronous, Qt попытается загрузить компонент синхронно, но может в конечном итоге загрузить его асинхронно, если это необходимо. К таким сценариям асинхронной загрузки относятся, но не ограничиваются ими:

  • URL ссылается на сетевой ресурс
  • Компонент создается в результате загрузки другого компонента асинхронно

Если необязательный параметр parent указан, он должен ссылаться на объект, который станет родителем для созданного объекта Component. Если режим не был передан, это может быть второй аргумент.

Вызовите Component.createObject() на возвращаемом компоненте, чтобы создать экземпляр объекта компонента.

Например:

import QtQuick 2.0

Item {
    id: container
    width: 300; height: 300

    function loadButton() {
        var component = Qt.createComponent("Button.qml");
        if (component.status == Component.Ready) {
            var button = component.createObject(container);
            button.color = "red";
        }
    }

    Component.onCompleted: loadButton()
}

См. Динамическое создание QML-объектов из JavaScript для получения дополнительной информации об использовании этой функции.

Чтобы создать QML-объект из произвольной строки QML (вместо файла), используйте Qt.createQmlObject().

объект createQmlObject(qml, объект parent, строка filepath)

Возвращает новый объект, созданный из заданной строки qml, который будет иметь указанный parent, или null если при создании объекта произошла ошибка.

Если filepath указан, он будет использоваться для отчёта об ошибках для созданного объекта.

Пример (где parentItem - идентификатор существующего QML-элемента):

var newObject = Qt.createQmlObject('import QtQuick 2.0; Rectangle {color: "red"; width: 20; height: 20}',
                                   parentItem,
                                   "dynamicSnippet1");

В случае ошибки выбрасывается объект Qt Script Error. Этот объект имеет дополнительное свойство, qmlErrors, которое представляет собой массив обнаруженных ошибок. Каждый объект в этом массиве имеет члены lineNumber, columnNumber, fileName и message. Например, если в приведенном выше фрагменте цвет был написан как 'colro', то массив содержал бы объект следующего вида: { "lineNumber" : 1, "columnNumber" : 32, "fileName" : "dynamicSnippet1", "message" : "Невозможно присвоить несуществующему свойству "colro""}.

Обратите внимание, что эта функция возвращает значение немедленно, и поэтому может не работать, если строка qml загружает новые компоненты (то есть внешние QML-файлы, которые ещё не загружены). В этом случае рассмотрите использование Qt.createComponent() вместо этого.

См. Динамическое создание QML-объектов из JavaScript для получения дополнительной информации об использовании этой функции.

Цвет darker(baseColor, вещественное factor)

Возвращает цвет, более тёмный, чем baseColor на величину, указанную в factor.

Если factor больше 1.0, эта функция возвращает более тёмный цвет. Установка factor равной 3.0 возвращает цвет с третью яркости. Если factor меньше 1.0, возвращаемый цвет будет светлее, но для этой цели рекомендуется использовать функцию Qt.lighter(). Если factor равно 0 или отрицательно, возвращаемое значение не определено.

Функция преобразует текущий цвет RGB в HSV, делит компонент значения (V) на factor и преобразует цвет обратно в RGB.

Если factor не указан, возвращает цвет, на 50% более тёмный, чем baseColor (factor 2.0).

exit(retCode)

Эта функция вызывает вызов сигнала QQmlEngine::exit(int). Внутри Prototyping with qmlscene это приводит к завершению запускаемого приложения с указанным кодом возврата. Для завершения цикла событий с указанным кодом возврата при вызове этого метода приложение C++ может подключить сигнал QQmlEngine::exit(int) к слоту QCoreApplication::exit(int).

См. такжеquit().

font(fontSpecifier)

Возвращает шрифт с заданными свойствами в fontSpecifier объекте или ближайшим соответствующим шрифтом. fontSpecifier объект должен содержать пары "ключ-значение", где допустимые ключи - это имена подсвойств типа шрифт, а значения - допустимые значения для каждого подсвойства. Недопустимые ключи будут проигнорированы.

список<строка> fontFamilies()

Возвращает список доступных для приложения шрифтов.

строка formatDate(date, вариант format)

Возвращает строковое представление date, необязательно отформатированное в соответствии с format.

Параметр date может быть объектом JavaScript Date, свойством дата, значением QDate или QDateTime.

Параметр format может принимать любые возможные значения формата, как описано для Qt.formatDateTime().

Если format не задан, date форматируется с использованием Qt.DefaultLocaleShortDate.

См. также Локаль.

строка formatDateTime(dateTime, вариант format)

Возвращает строковое представление datetime, необязательно отформатированное в соответствии с format.

Параметр date может быть объектом JavaScript Date, свойством дата, значением QDate, QTime или QDateTime.

Если format не задан, dateTime форматируется с использованием Qt.DefaultLocaleShortDate. В противном случае format должен быть одним из следующих:

  • Одно из значений перечисления Qt::DateFormat, например, Qt.DefaultLocaleShortDate или Qt.ISODate.
  • Строка, которая определяет формат возвращаемой строки, как подробно описано ниже.

Если format задаёт строку формата, она должна использовать следующие выражения для задания даты:

Выражение Вывод
d день как число без ведущего нуля (1-31)
dd день как число с ведущим нулём (01-31)
ddd сокращённое локальное название дня (например, 'Пн' до 'Вс'). Использует QDate::shortDayName().
dddd полное локальное название дня (например, 'Понедельник' до 'Qt::Воскресенье'). Использует QDate::longDayName().
M месяц как число без ведущего нуля (1-12)
MM месяц как число с ведущим нулём (01-12)
MMM сокращённое локальное название месяца (например, 'Янв' до 'Дек'). Использует QDate::shortMonthName().
MMMM полное локальное название месяца (например, 'Январь' до 'Декабрь'). Использует QDate::longMonthName().
yy год как число с двумя цифрами (00-99)
yyyy год как число с четырьмя цифрами

Кроме того, можно использовать следующие выражения для задания времени:

Выражение Вывод
h час без ведущего нуля (0 до 23 или 1 до 12, если отображаются AM/PM)
hh час с ведущим нулём (00 до 23 или 01 до 12, если отображаются AM/PM)
m минута без ведущего нуля (0 до 59)
mm минута с ведущим нулём (00 до 59)
s секунда без ведущего нуля (0 до 59)
ss секунда с ведущим нулём (00 до 59)
z миллисекунды без ведущих нулей (0 до 999)
zzz миллисекунды с ведущими нулями (000 до 999)
AP использовать отображение AM/PM. AP будет заменено либо "AM", либо "PM".
ap использовать отображение am/pm. ap будет заменено либо "am", либо "pm".
t включить индикатор часового пояса.

Все остальные символы ввода будут проигнорированы. Любая последовательность символов, заключенная в одинарные кавычки, будет обрабатываться как текст и не будет использоваться как выражение. Два последовательных одинарных кавычки ("''") заменяются одним в выходных данных.

Например, если указано следующее значение даты/времени:

// 21 May 2001 14:13:09
var dateTime = new Date(2001, 5, 21, 14, 13, 09)

Это значение dateTime можно передать в Qt.formatDateTime(), Qt.formatDate() или Qt.formatTime() со значениями format ниже, чтобы получить следующие результаты:

Формат Результат
"dd.MM.yyyy" 21.05.2001
"ddd MMMM d yy" Втор Май 21 01
"hh:mm:ss.zzz" 14:13:09.042
"h:m:s ap" 2:13:9 pm

См. также Регион.

строка formatTime(time, variant format)

Возвращает строковое представление time, необязательно отформатированное в соответствии с format.

Параметр time может быть объектом JavaScript Date , значением QTime или QDateTime. Параметр format может быть любым из возможных значений формата, как описано для Qt.formatDateTime().

Если format не указан, time форматируется с использованием Qt.DefaultLocaleShortDate.

См. также Регион.

цвет hsla(hue, вещественное saturation, вещественное lightness, вещественное alpha)

Возвращает цвет с указанными hue, saturation, lightness и alpha компонентами. Все компоненты должны быть в диапазоне от 0 до 1 включительно.

цвет hsva(hue, вещественное saturation, вещественное value, вещественное alpha)

Возвращает цвет с указанными hue, saturation, value и alpha компонентами. Все компоненты должны быть в диапазоне от 0 до 1 включительно.

Этот метод был представлен в Qt 5.5.

логическое isQtObject(object)

Возвращает true, если object является допустимой ссылкой на объект Qt или QML, в противном случае false.

цвет lighter(baseColor, вещественное factor)

Возвращает цвет, более светлый, чем baseColor на factor.

Если коэффициент больше 1.0, эта функция возвращает более светлый цвет. Установка коэффициента в 1.5 возвращает цвет, на 50% более яркий. Если коэффициент меньше 1.0, возвращаемый цвет темнее, но мы рекомендуем использовать функцию Qt.darker() для этой цели. Если коэффициент равен 0 или отрицательный, возвращаемое значение не определено.

Функция преобразует текущий цвет RGB в HSV, умножает компонент значения (V) на коэффициент и преобразует цвет обратно в RGB.

Если factor не указан, возвращает цвет на 50% светлее, чем baseColor (коэффициент 1.5).

locale(name)

Возвращает JS-объект, представляющий регион с указанным именем, имеющий формат "язык[_территория][.кодировка][@модификатор]" или "C", где:

  • язык — это двухбуквенный, строчный, код языка ISO 639,
  • территория — это двухбуквенный, заглавный, код страны ISO 3166,
  • а кодировка и модификатор игнорируются.

Если строка нарушает формат региона или язык не является допустимым кодом ISO 369, используется регион "C". Если страна отсутствует или не является допустимым кодом ISO 3166, для указанного языка выбирается наиболее подходящая страна.

См. также Регион.

строка md5(data)

Возвращает шестнадцатеричную строку хэш-значения md5 data.

matrix4x4(m11, вещественное m12, вещественное m13, вещественное m14, вещественное m21, вещественное m22, вещественное m23, вещественное m24, вещественное m31, вещественное m32, вещественное m33, вещественное m34, вещественное m41, вещественное m42, вещественное m43, вещественное m44)

Возвращает Matrix4x4 со значениями, указанными выше. Альтернативно, функция может быть вызвана с одним аргументом, где этот аргумент является массивом JavaScript, содержащим шестнадцать значений матрицы. Наконец, функция может быть вызвана без аргументов, и полученная матрица будет единичной матрицей.

логическое openUrlExternally(target)

Попытка открыть указанный target URL в внешнем приложении, основываясь на пользовательских настройках рабочего стола. Возвращает true, если это удается, и false в противном случае.

Предупреждение: Возвращаемое значение true указывает, что приложение успешно запросило операционную систему открыть URL в внешнем приложении. Внешнее приложение все равно может не запуститься или не открыть запрошенный URL. Этот результат не будет сообщен обратно приложению.

point point(x, целое y)

Возвращает Point с указанными x и y координатами.

строка qsTr(sourceText, строка disambiguation, целое n)

Возвращает переведенную версию sourceText, необязательно на основе строки disambiguation и значения n для строк, содержащих множественные формы; в противном случае возвращает sourceText, если нет соответствующей переведенной строки.

Если один и тот же sourceText используется в разных ролях в одном контексте перевода, для disambiguation может быть передана дополнительная идентифицирующая строка.

Пример:

Text { text: qsTr("hello") }

См. также Локализация и интернационализация с Qt Quick.

строка qsTrId(id, целое n)

Возвращает переведенную строку, идентифицированную по id. Если такая строка не найдена, возвращается сам id. Это не должно происходить в нормальных условиях.

Если n >= 0, все вхождения %n в результирующей строке заменяются десятичным представлением n. Кроме того, в зависимости от значения n, текст перевода может изменяться.

Пример:

Text { text: qsTrId("hello_id") }

Возможно предоставить шаблон строки-источника, например:

//% <string>

или

\begincomment% <string> \endcomment

Пример:

Text {
    //% "hello"
    text: qsTrId("hello_id")
}

Для создания двоичных файлов перевода (QM), пригодных для использования с этой функцией, необходимо передать опцию -idbased в инструмент lrelease.

См. также QT_TRID_NOOP() и Локализация и интернационализация с Qt Quick.

строка qsTrIdNoOp(id)

Помечает id для динамического перевода.

Возвращает id.

QT_TRID_NOOP используется совместно с функцией динамического перевода qsTrId(). Она идентифицирует строку, требующую перевода (чтобы она могла быть идентифицирована lupdate), но делегирует фактический перевод функции qsTrId().

Пример:

Item {
    property string greetingId: QT_TRID_NOOP("hello_id")

    Text { text: qsTrId(greetingId) }
}

См. также qsTrId() и Локализация и интернационализация с Qt Quick.

строка qsTrNoOp(sourceText, строка disambiguation)

Помечает sourceText для динамического перевода; т.е., хранимый sourceText не будет изменён.

Если один и тот же sourceText используется в разных ролях в одном контексте перевода, для disambiguation может быть передана дополнительная идентифицирующая строка.

Возвращает sourceText.

QT_TR_NOOP используется совместно с функциями динамического перевода qsTr() и qsTranslate(). Она идентифицирует строку, требующую перевода (чтобы она могла быть идентифицирована lupdate), но делегирует фактический перевод динамическим функциям.

Пример:

Item {
    property string greeting: QT_TR_NOOP("hello")

    Text { text: qsTr(greeting) }
}

См. также Локализация и интернационализация с Qt Quick.

END_OF_DOCUMENT_MARKER

строка qsTranslate(context, строка sourceText, строка disambiguation, int n)

Возвращает переведённую версию sourceText в заданном context, необязательно на основе строки disambiguation и значения n для строк, содержащих множественное число; в противном случае возвращает sourceText, если подходящая переведённая строка недоступна.

Если одно и то же sourceText используется в разных ролях в одном и том же контексте перевода context, можно передать дополнительную идентифицирующую строку для disambiguation.

Пример:

Text { text: qsTranslate("CustomContext", "hello") }

См. также Локализация и интернационализация с Qt Quick.

строка qsTranslateNoOp(context, строка sourceText, строка disambiguation)

Помечает sourceText для динамического перевода в данном context; т.е., сохранённое sourceText не будет изменено.

Если одно и то же sourceText используется в разных ролях в одном контексте перевода, можно передать дополнительную идентифицирующую строку для disambiguation.

Возвращает sourceText.

QT_TRANSLATE_NOOP используется совместно с функциями динамического перевода qsTr() и qsTranslate(). Она идентифицирует строку, требующую перевода (чтобы её можно было идентифицировать с помощью lupdate), но фактический перевод оставляет динамическим функциям.

Пример:

Item {
    property string greeting: QT_TRANSLATE_NOOP("CustomContext", "hello")

    Text { text: qsTranslate("CustomContext", greeting) }
}

См. также Локализация и интернационализация с Qt Quick.

quaternion(scalar, вещественное x, вещественное y, вещественное z)

Возвращает кватернион с заданными scalar, x, y, и z.

quit()

Эта функция вызывает эмиссию сигнала QQmlEngine::quit(). Внутри Прототипирования с qmlscene это приводит к выходу приложения-загрузчика; чтобы завершить приложение C++, когда вызывается этот метод, подключите сигнал QQmlEngine::quit() к слоту QCoreApplication::quit().

См. также exit().

прямоугольник rect(x, int y, int width, int height)

Возвращает rect с верхним левым углом в точке x, y и заданной width и height.

Возвращаемый объект имеет x, y, width и height атрибуты со значениями, указанными выше.

url resolvedUrl(url)

Возвращает url, разрешённый относительно URL вызывающего объекта.

цвет rgba(red, вещественное green, вещественное blue, вещественное alpha)

Возвращает цвет с указанными red, green, blue и alpha компонентами. Все компоненты должны находиться в диапазоне от 0 до 1 включительно.

size(width, int height)

Возвращает Размер со значениями width и height.

цвет tint(baseColor, цвет tintColor)

Эта функция позволяет тонировать один цвет другим.

Цвет тонирования обычно должен быть преимущественно прозрачным, иначе вы не увидите подлежащий цвет. Приведённый ниже пример обеспечивает небольшой красный оттенок, имея цвет тонирования чистым красным, который имеет только 1/16 непрозрачности.

Item {
    Rectangle {
        x: 0; width: 80; height: 80
        color: "lightsteelblue"
    }
    Rectangle {
        x: 100; width: 80; height: 80
        color: Qt.tint("lightsteelblue", "#10FF0000")
    }
}

Оттенок наиболее полезен, когда предполагается передать небольшое изменение в результате какого-либо события; вы можете использовать тонирование для более эффективной настройки видимого цвета.

vector2d(x, вещественное y)

Возвращает Vector2D со значениями x и y.

vector3d(x, вещественное y, вещественное z)

Возвращает Vector3D со значениями x, y и z.

vector4d(x, вещественное y, вещественное z, вещественное w)

Возвращает Vector4D со значениями x, y, z и w.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qml-qtqml-qt.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API