Spec-Zone.ru › Qt 5.6

Класс QQmlNdefRecord

Класс QQmlNdefRecord реализует тип NdefRecord в QML. Подробнее...

Заголовок: #include <QQmlNdefRecord>
qmake: QT += nfc
С момента: Qt 5.2
Инициализируется: NdefRecord
Наследует: QObject
  • Список всех членов, включая унаследованные

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

перечисление TypeNameFormat { Empty, NfcRtd, Mime, Uri, ExternalRtd, Unknown }

Свойства

  • record : QNdefRecord
  • type : QString
  • typeNameFormat : TypeNameFormat
  • 1 свойство унаследовано от QObject

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

QQmlNdefRecord(QObject *parent = Q_NULLPTR)
QQmlNdefRecord(const QNdefRecord &record, QObject *parent = Q_NULLPTR)
~QQmlNdefRecord()
QNdefRecord record() const
void setRecord(const QNdefRecord &record)
void setType(const QString &newtype)
void setTypeNameFormat(TypeNameFormat newTypeNameFormat)
QString type() const
TypeNameFormat typeNameFormat() const
  • 31 открытая функция унаследована от QObject

Сигналы

void recordChanged()
void typeChanged()
void typeNameFormatChanged()
  • 2 сигнала унаследовано от QObject

Макросы

Q_DECLARE_NDEFRECORD(className, typeNameFormat, type)

Дополнительные унаследованные члены

  • 1 открытый слот унаследован от QObject
  • 11 статические открытые члены унаследованы от QObject
  • 9 защищённые функции унаследованы от QObject

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

Класс QQmlNdefRecord реализует тип NdefRecord в QML.

Класс QQmlNdefRecord является базовым классом для всех типов NdefRecord в QML. Для поддержки нового типа записей NDEF в QML, следует создать подкласс этого класса и добавить новые свойства, функции-члены и сигналы, соответствующие новому типу записей. Для создания нового типа записей NDEF в QML необходимо выполнить следующие действия:

  • Подкласс должен иметь макрос Q_OBJECT в своём объявлении.
  • Подкласс должен иметь вызываемый конструктор, который принимает QNdefRecord и указатель на QObject.
  • Подкласс должен быть объявлен как запись NDEF, расширив макрос Q_DECLARE_NDEFRECORD() в файле реализации подкласса.
  • Подкласс должен быть зарегистрирован в QML.

Например, объявление такого класса может выглядеть следующим образом.

class QQmlNdefFooRecord : public QQmlNdefRecord
{
    Q_OBJECT

    Q_PROPERTY(int foo READ foo WRITE setFoo NOTIFY fooChanged)

public:
    explicit QQmlNdefFooRecord(QObject *parent = 0);
    Q_INVOKABLE QQmlNdefFooRecord(const QNdefRecord &record, QObject *parent = 0);
    ~QQmlNdefFooRecord();

    int foo() const;
    void setFoo(int value);

signals:
    void fooChanged();
};

В файле реализации макрос Q_DECLARE_NDEFRECORD() расширяется:

Q_DECLARE_NDEFRECORD(QQmlNdefFooRecord, QNdefRecord::ExternalRtd, "com.example:f")

Наконец, код приложения или плагина вызывает qmlRegisterType():

qmlRegisterType<QQmlNdefFooRecord>(uri, 1, 0, "NdefFooRecord");

См. также NdefRecord.

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

перечисление QQmlNdefRecord::TypeNameFormat

Это перечисление описывает формат имени типа записи NDEF. Значения этого перечисления соответствуют значениям перечисления QNdefRecord::TypeNameFormat

Константа Значение Описание
QQmlNdefRecord::Empty QNdefRecord::Empty Пустая запись NDEF, запись не содержит полезной нагрузки.
QQmlNdefRecord::NfcRtd QNdefRecord::NfcRtd Тип записи NDEF определяется спецификацией NFC RTD.
QQmlNdefRecord::Mime QNdefRecord::Mime Тип записи NDEF соответствует структуре, описанной в RFC 2046.
QQmlNdefRecord::Uri QNdefRecord::Uri Тип записи NDEF соответствует структуре, описанной в RFC 3986.
QQmlNdefRecord::ExternalRtd QNdefRecord::ExternalRtd Тип записи NDEF соответствует структуре внешних имён типов, описанной в спецификации NFC RTD.
QQmlNdefRecord::Unknown QNdefRecord::Unknown Тип записи NDEF неизвестен.

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

record : QNdefRecord

Это свойство содержит запись NDEF, которую представляет данный класс.

Функции доступа:

QNdefRecord record() const
void setRecord(const QNdefRecord &record)

Сигнал уведомления:

void recordChanged()

type : QString

Это свойство содержит тип записи NDEF.

Функции доступа:

QString type() const
void setType(const QString &newtype)

Сигнал уведомления:

void typeChanged()

typeNameFormat : TypeNameFormat

Это свойство содержит TNF записи NDEF.

Функции доступа:

TypeNameFormat typeNameFormat() const
void setTypeNameFormat(TypeNameFormat newTypeNameFormat)

Сигнал уведомления:

void typeNameFormatChanged()

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

QQmlNdefRecord::QQmlNdefRecord(QObject *parent = Q_NULLPTR)

Создаёт новую пустую запись QQmlNdefRecord с parent.

QQmlNdefRecord::QQmlNdefRecord(const QNdefRecord &record, QObject *parent = Q_NULLPTR)

Создаёт новый объект QQmlNdefRecord, представляющий record. Родительским объектом нового объекта будет parent.

QQmlNdefRecord::~QQmlNdefRecord()

Удаляет экземпляр QQmlNdefRecord.

QNdefRecord QQmlNdefRecord::record() const

Возвращает копию записи.

Примечание: Функция-геттер для свойства record.

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

void QQmlNdefRecord::setRecord(const QNdefRecord &record)

Устанавливает запись в record. Если запись установлена, будет выпущен сигнал recordChanged().

Примечание: Функция-сеттер для свойства record.

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

void QQmlNdefRecord::setType(const QString &newtype)

Устанавливает тип записи в newtype, если он не равен текущему типу type; в противном случае ничего не делает. Если тип записи установлен, будет выпущен сигнал typeChanged().

Примечание: Функция-сеттер для свойства type.

См. также QNdefRecord::setType() и QNdefRecord::type().

void QQmlNdefRecord::setTypeNameFormat(TypeNameFormat newTypeNameFormat)

Устанавливает формат имени типа записи NDEF в newTypeNameFormat.

Примечание: Функция-сеттер для свойства typeNameFormat.

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

QString QQmlNdefRecord::type() const

Возвращает тип записи.

Примечание: Функция-геттер для свойства type.

См. также QNdefRecord::setType() и QNdefRecord::type().

[signal] void QQmlNdefRecord::typeChanged()

Этот сигнал излучается при изменении типа записи.

Примечание: Сигнал-уведомление для свойства type.

TypeNameFormat QQmlNdefRecord::typeNameFormat() const

Возвращает формат имени типа записи NDEF.

Примечание: Функция-геттер для свойства typeNameFormat.

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

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

Q_DECLARE_NDEFRECORD(className, typeNameFormat, type)

Этот макрос гарантирует, что className объявлен как класс, реализующий запись NDEF, идентифицируемую по typeNameFormat и type.

Этот макрос должен быть расширен в файле реализации для className.

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

Spec-Zone.ru

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