Spec-Zone.ru › Qt 6.1

Класс QMetaProperty

Класс QMetaProperty предоставляет метаданные о свойстве. Подробнее...

Заголовок: #include <QMetaProperty>
CMake: find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
  • Список всех членов, включая унаследованные
  • Устаревшие члены

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

QUntypedBindable bindable(QObject *object) const
QMetaEnum enumerator() const
bool hasNotifySignal() const
bool isBindable() const
bool isConstant() const
bool isDesignable() const
bool isEnumType() const
bool isFinal() const
bool isFlagType() const
bool isReadable() const
bool isRequired() const
bool isResettable() const
bool isScriptable() const
bool isStored() const
bool isUser() const
bool isValid() const
bool isWritable() const
QMetaType metaType() const
const char * name() const
QMetaMethod notifySignal() const
int notifySignalIndex() const
int propertyIndex() const
QVariant read(const QObject *object) const
QVariant readOnGadget(const void *gadget) const
int relativePropertyIndex() const
bool reset(QObject *object) const
bool resetOnGadget(void *gadget) const
int revision() const
int typeId() const
const char * typeName() const
int userType() const
bool write(QObject *object, const QVariant &value) const
bool writeOnGadget(void *gadget, const QVariant &value) const

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

Метаданные свойства получаются из метаобъекта объекта. Подробности см. в QMetaObject::property() и QMetaObject::propertyCount().

Метаданные свойства

Свойство имеет имя name() и тип(), а также различные атрибуты, определяющие его поведение: isReadable(), isWritable(), isDesignable(), isScriptable(), revision() и isStored().

Если свойство является перечислением, isEnumType() возвращает true; если свойство является перечислением, которое также является флагом (т. е. его значения могут быть объединены с помощью оператора ИЛИ), isEnumType() и isFlagType() оба возвращают true. Перечисление для этих типов доступно из enumerator().

Значения свойства устанавливаются и извлекаются с помощью read(), write() и reset(); они также могут быть изменены с помощью функций set и get QObject. См. QObject::setProperty() и QObject::property() для получения подробностей.

Копирование и присваивание

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

См. также QMetaObject, QMetaEnum, QMetaMethod и Qt's Property System.

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

[since 6.0] QUntypedBindable QMetaProperty::bindable(QObject *object) const

Возвращает интерфейс bindable для свойства на заданном объекте object.

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

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

См. также QObjectBindableProperty, QProperty и isBindable().

QMetaEnum QMetaProperty::enumerator() const

Возвращает перечисление, если тип этого свойства является типом перечисления; в противном случае возвращаемое значение не определено.

См. также isEnumType() и isFlagType().

bool QMetaProperty::hasNotifySignal() const

Возвращает true , если у этого свойства есть соответствующий сигнал уведомления о изменении; в противном случае возвращает false.

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

[since 6.0] bool QMetaProperty::isBindable() const

Возвращает true , если Q_PROPERTY() предоставляет функциональность привязки; в противном случае возвращает false.

Это подразумевает, что вы можете создавать привязки, использующие это свойство в качестве зависимости или устанавливать объекты QPropertyObserver на это свойство. Если свойство не является только для чтения, вы также можете установить привязку к этому свойству.

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

См. также QProperty, isWritable() и bindable().

bool QMetaProperty::isConstant() const

Возвращает true , если свойство является константой; в противном случае возвращает false.

Свойство является константой, если атрибут Q_PROPERTY() объекта CONSTANT установлен.

bool QMetaProperty::isDesignable() const

Возвращает false , если атрибут Q_PROPERTY() объекта DESIGNABLE имеет значение false; в противном случае возвращает true.

См. также isScriptable() и isStored().

bool QMetaProperty::isEnumType() const

Возвращает true если тип свойства — перечисление; в противном случае возвращает false.

См. также enumerator() и isFlagType().

bool QMetaProperty::isFinal() const

Возвращает true если свойство является конечным; в противном случае возвращает false.

Свойство является конечным, если у Q_PROPERTY() установлен атрибут FINAL.

bool QMetaProperty::isFlagType() const

Возвращает true если тип свойства — перечисление, используемое как флаг; в противном случае возвращает false.

Флаги могут быть объединены с помощью оператора ИЛИ. Тип флага неявно также является типом перечисления.

См. также isEnumType(), enumerator() и QMetaEnum::isFlag().

bool QMetaProperty::isReadable() const

Возвращает true если данное свойство читаемо; в противном случае возвращает false.

См. также isWritable(), read() и isValid().

[since 5.15] bool QMetaProperty::isRequired() const

Возвращает true если свойство обязательно; в противном случае возвращает false.

Свойство является конечным, если у Q_PROPERTY() установлен атрибут REQUIRED.

Функция была введена в Qt 5.15.

bool QMetaProperty::isResettable() const

Возвращает true если это свойство может быть сброшено до значения по умолчанию; в противном случае возвращает false.

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

bool QMetaProperty::isScriptable() const

Возвращает false если атрибут Q_PROPERTY() свойства SCRIPTABLE равен false; в противном случае возвращает true.

См. также isDesignable() и isStored().

bool QMetaProperty::isStored() const

Возвращает true если свойство хранится; в противном случае возвращает false.

Функция возвращает false если атрибут Q_PROPERTY() свойства STORED равен false; в противном случае возвращает true.

См. также isDesignable() и isScriptable().

bool QMetaProperty::isUser() const

Возвращает false если атрибут Q_PROPERTY() свойства USER равен false. В противном случае возвращает true, указывая, что свойство обозначено как свойство пользователя, то есть то, которое пользователь может изменить или которое важно каким-либо другим способом.

См. также QMetaObject::userProperty(), isDesignable() и isScriptable().

bool QMetaProperty::isValid() const

Возвращает true если это свойство валидно (читаемо); в противном случае возвращает false.

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

bool QMetaProperty::isWritable() const

Возвращает true если данное свойство записываемо; в противном случае возвращает false.

См. также isReadable() и write().

[since 6.0] QMetaType QMetaProperty::metaType() const

Возвращает QMetaType этого свойства.

Функция была введена в Qt 6.0.

См. также QMetaType.

const char *QMetaProperty::name() const

Возвращает имя этого свойства.

См. также type() и typeName().

QMetaMethod QMetaProperty::notifySignal() const

Возвращает экземпляр QMetaMethod сигнала уведомления о изменении свойства, если он был указан; в противном случае возвращает невалидный QMetaMethod.

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

int QMetaProperty::notifySignalIndex() const

Возвращает индекс сигнала уведомления о изменении свойства, если он был указан; в противном случае возвращает -1.

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

int QMetaProperty::propertyIndex() const

Возвращает индекс этого свойства.

QVariant QMetaProperty::read(const QObject *object) const

Считывает значение свойства из заданного объекта object. Возвращает значение, если удалось его прочитать; в противном случае возвращает невалидный вариант.

См. также write(), reset() и isReadable().

[since 5.5] QVariant QMetaProperty::readOnGadget(const void *gadget) const

Считывает значение свойства из заданного gadget. Возвращает значение, если удалось его прочитать; в противном случае возвращает невалидный вариант.

Эта функция должна использоваться только если это свойство объекта Q_GADGET

Функция была введена в Qt 5.5.

[since 5.14] int QMetaProperty::relativePropertyIndex() const

Возвращает индекс этого свойства относительно вложенного метаобъекта.

Функция была введена в Qt 5.14.

bool QMetaProperty::reset(QObject *object) const

Сбрасывает свойство для данного объекта object с помощью метода сброса. Возвращает true если сброс выполнен; в противном случае возвращает false.

Методы сброса являются необязательными; только некоторые свойства их поддерживают.

См. также read() и write().

[since 5.5] bool QMetaProperty::resetOnGadget(void *gadget) const

Сбрасывает свойство для заданного gadget с помощью метода сброса. Возвращает true если сброс выполнен; в противном случае возвращает false.

Эта функция должна использоваться только если это свойство объекта Q_GADGET

Функция была введена в Qt 5.5.

[since 5.1] int QMetaProperty::revision() const

Возвращает ревизию свойства, если она была указана атрибутом REVISION, в противном случае возвращает 0.

Функция была введена в Qt 5.1.

[since 6.0] int QMetaProperty::typeId() const

Возвращает тип хранилища свойства. Это то же самое, что metaType().id().

Функция была введена в Qt 6.0.

См. также QMetaType, typeName() и metaType().

const char *QMetaProperty::typeName() const

Возвращает имя типа этого свойства.

См. также type() и name().

int QMetaProperty::userType() const

Возвращает пользовательский тип этого свойства. Возвращаемое значение — одно из значений, зарегистрированных в QMetaType.

Эквивалентно metaType().id()

См. также type(), QMetaType, typeName() и metaType().

bool QMetaProperty::write(QObject *object, const QVariant &value) const

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

Если value не имеет того же типа, что и свойство, будет выполнена попытка преобразования. Пустой QVariant() эквивалентен вызову reset(), если это свойство сбрасываемо, или установлению объекта, созданного по умолчанию, в противном случае.

См. также read(), reset() и isWritable().

[since 5.5] bool QMetaProperty::writeOnGadget(void *gadget, const QVariant &value) const

Записывает value как значение свойства в данный gadget. Возвращает true, если запись выполнена; в противном случае возвращает false.

Эта функция должна использоваться только если это свойство объекта Q_GADGET

Функция была введена в Qt 5.5.

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

Spec-Zone.ru

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