Spec-Zone.ru › Qt 5.15

Класс QXmlItem

Класс QXmlItem содержит либо узел XML, либо атомарное значение. Подробнее...

Заголовок: #include <QXmlItem>
qmake: QT += xmlpatterns
С момента: Qt 4.4

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

  • Список всех членов, включая унаследованные

Примечание: Все функции в этом классе являются реентерабельными.

Открытые типы

typedef Iterator

Открытые функции

QXmlItem(const QVariant &atomicValue)
QXmlItem(const QXmlNodeModelIndex &node)
QXmlItem(const QXmlItem &other)
QXmlItem()
QXmlItem & operator=(const QXmlItem &other)
~QXmlItem()
bool isAtomicValue() const
bool isNode() const
bool isNull() const
QVariant toAtomicValue() const
QXmlNodeModelIndex toNodeModelIndex() const

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

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

<aNode/>,
xs:base64Binary("FFFF"),
current-date(),
3e3, (: A floating point value :)
attribute {"name"} {()}

Пять элементов: элемент, атомарное значение (двоичные данные, закодированные в base64), дата, число с плавающей запятой и атрибут.

QXmlItem — это класс, представляющий эти элементы XQuery в API Qt XML Patterns. Объект QXmlItem (не равный null) представляет собой либо узел, либо атомарное значение. Вызов isNode() или isAtomicValue() определяет, что это такое. Атомарные значения в другом месте API Qt представлены экземплярами QVariant, а экземпляр QXmlItem, представляющий атомарное значение, может быть преобразован в QVariant с помощью вызова toAtomicValue(). QXmlItem, оборачивающий узел, представлен в другом месте экземпляром QXmlNodeModelIndex. Узел QXmlItem может быть преобразован в QXmlNodeModelIndex с помощью вызова toNodeModelIndex().

Экземпляр QXmlItem, созданный по умолчанию, не является ни узлом, ни атомарным значением. Он считается нулевым, и в этом случае isNull() возвращает true.

Объект QXmlItem будет висячим, если модель XML-узла, на которую он ссылается, удалена, если это QXmlNodeModelIndex.

Документация по типам членов

typedef QXmlItem::Iterator

QAbstractXmlForwardIterator над QXmlItem.

Документация по функциям-членам

QXmlItem::QXmlItem(const QVariant &atomicValue)

Создаёт QXmlItem атомарного значения с atomicValue.

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

QXmlItem::QXmlItem(const QXmlNodeModelIndex &node)

Создаёт QXmlItem узла, который является копией node.

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

QXmlItem::QXmlItem(const QXmlItem &other)

Конструктор копирования создаёт копию other.

QXmlItem::QXmlItem()

Создаёт нулевой QXmlItem, который не является ни узлом, ни атомарным значением. isNull() возвращает true для экземпляра, созданного по умолчанию.

QXmlItem &QXmlItem::operator=(const QXmlItem &other)

Присваивает other к this.

QXmlItem::~QXmlItem()

Деструктор.

bool QXmlItem::isAtomicValue() const

Возвращает true, если этот элемент является атомарным значением. Возвращает false, если это узел или null.

См. также isNull() и isNode().

bool QXmlItem::isNode() const

Возвращает true, если этот элемент является узлом. Возвращает false, если это атомарное значение или null.

См. также isNull() и isAtomicValue().

bool QXmlItem::isNull() const

Возвращает true, если этот QXmlItem не является ни узлом, ни атомарным значением. Экземпляры QXmlItem, созданные по умолчанию, являются нулевыми.

QVariant QXmlItem::toAtomicValue() const

Если этот QXmlItem представляет атомарное значение, он преобразуется в соответствующий QVariant и возвращается. Если этот QXmlItem не является атомарным значением, возвращаемое значение — QVariant, созданный по умолчанию. Вы можете вызвать isAtomicValue(), чтобы проверить, является ли элемент атомарным значением.

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

QXmlNodeModelIndex QXmlItem::toNodeModelIndex() const

Если этот QXmlItem представляет узел, он возвращает элемент как QXmlNodeModelIndex. Если этот QXmlItem не является узлом, возвращаемое значение не определено. Вы можете вызвать isNode(), чтобы проверить, является ли элемент узлом.

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

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

Spec-Zone.ru

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