Перечисление QML Базовый тип
Тип enumeration относится к именованному значению перечисления.
Каждое именованное значение может быть представлено как <Type>.<value>. Например, тип Text имеет значение перечисления AlignRight.
Text { horizontalAlignment: Text.AlignRight } (Для обратной совместимости значение перечисления также может быть указано в виде строки, например, "AlignRight". Этот формат не рекомендуется для нового кода.)
При интеграции с C++, обратите внимание, что любое значение enum , переданное в QML из C++, автоматически преобразуется в значение enumeration, и наоборот.
Этот базовый тип предоставляется языком QML. Некоторые значения перечисления предоставляются импортом QtQuick.
Использование типа перечисления в QML
Тип enumeration представляет собой представление типа C++ enum. В самом QML нельзя ссылаться на тип enumeration; вместо этого, при ссылке на значения enumeration из кода QML можно использовать типы int или var.
Например:
import QtQuick 2.0
Item {
// refer to Text.AlignRight using an int type
property int enumValue: textItem.horizontalAlignment
signal valueEmitted(int someValue)
Text {
id: textItem
horizontalAlignment: Text.AlignRight
}
// emit valueEmitted() signal, which expects an int, with Text.AlignRight
Component.onCompleted: valueEmitted(Text.AlignRight)
} См. также QML Базовые типы и Атрибуты перечисления.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-enumeration.html