Класс QUntypedBindable
QUntypedBindable — это унифицированный интерфейс для связываемых свойств, таких как QProperty\<T\> и QObjectBindableProperty любого типа T. Подробнее...
| Заголовок: | #include <QUntypedBindable> |
| CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| С тех пор: | Qt 6.0 |
| Наследуется от: |
Открытые функции
| QUntypedBindable(Property *property) | |
| QUntypedBindable() | |
| QPropertyNotifier | addNotifier(Functor f) |
| QUntypedPropertyBinding | binding() const |
| bool | hasBinding() const |
| bool | isReadOnly() const |
| bool | isValid() const |
| QUntypedPropertyBinding | makeBinding(const QPropertyBindingSourceLocation &location = QT_PROPERTY_DEFAULT_BINDING_LOCATION) const |
| QMetaType | metaType() const |
| QPropertyChangeHandler<Functor> | onValueChanged(Functor f) const |
| bool | setBinding(const QUntypedPropertyBinding &binding) |
| QPropertyChangeHandler<Functor> | subscribe(Functor f) const |
| QUntypedPropertyBinding | takeBinding() |
Подробное описание
QUntypedBindable — это полностью типизированный общий интерфейс для обертывания связываемых свойств. Его можно использовать для взаимодействия со свойствами, не зная их типа и не заботясь о том, какого рода связываемым свойством они являются (например, QProperty или QObjectBindableProperty). В большинстве случаев предпочтительно использовать QBindable<T> (который является обобщенным по реализации свойства, но имеет фиксированный тип).
Документация по членам-функциям
шаблон <тип свойства> QUntypedBindable::QUntypedBindable(свойство *property)
Создает QUntypedBindable из свойства property. Если Property — const, QUntypedBindable будет только для чтения. Если property равно null, QUntypedBindable будет недействительным.
См. также isValid() и isReadOnly().
QUntypedBindable::QUntypedBindable()
Конструктор по умолчанию QUntypedBindable. Он находится в недопустимом состоянии.
См. также isValid().
шаблон <тип Functor> QPropertyNotifier QUntypedBindable::addNotifier(Functor f)
Устанавливает f в качестве обработчика изменений. Всякий раз, когда базовое свойство изменяется, f будет вызываться, пока возвращаемый QPropertyNotifier и свойство остаются активными.
В некоторых случаях этот метод проще использовать, чем onValueChanged(), так как возвращаемый объект не является шаблоном. Поэтому его можно проще хранить, например, как член класса.
См. также onValueChanged() и subscribe().
QUntypedPropertyBinding QUntypedBindable::binding() const
Возвращает привязку базового свойства, если она есть, или QUntypedPropertyBinding по умолчанию в противном случае.
См. также setBinding() и hasBinding().
bool QUntypedBindable::hasBinding() const
Возвращает true если базовое свойство имеет привязку.
bool QUntypedBindable::isReadOnly() const
Возвращает true, если QUntypedBindable только для чтения.
Эта функция была добавлена в Qt 6.1.
bool QUntypedBindable::isValid() const
Возвращает true, если QUntypedBindable действителен. Методы, вызываемые на недействительном QUntypedBindable, обычно не имеют эффекта, если не указано иное.
QUntypedPropertyBinding QUntypedBindable::makeBinding(const QPropertyBindingSourceLocation &location = QT_PROPERTY_DEFAULT_BINDING_LOCATION) const
Создает привязку, возвращающую значение базовых свойств, используя указанное расположение источника location.
QMetaType QUntypedBindable::metaType() const
Возвращает метатип свойства, из которого был создан QUntypedBindable. Если связываемое свойство недействительно, будет возвращен недействительный метатип.
Эта функция была добавлена в Qt 6.2.
См. также isValid().
шаблон <тип Functor> QPropertyChangeHandler<Functor> QUntypedBindable::onValueChanged(Functor f) const
Устанавливает f в качестве обработчика изменений. Всякий раз, когда базовое свойство изменяется, f будет вызываться, пока возвращаемый QPropertyChangeHandler и свойство остаются активными. При каждом изменении значения обработчик вызывается либо немедленно, либо отложенно, в зависимости от контекста.
См. также onValueChanged() и subscribe().
bool QUntypedBindable::setBinding(const QUntypedPropertyBinding &binding)
Устанавливает привязку базового свойства на binding. Это не имеет эффекта, если QUntypedBindable только для чтения, null или если тип binding не соответствует типу базового свойства.
Возвращает true когда привязка была успешно установлена.
См. также binding().
шаблон <тип Functor> QPropertyChangeHandler<Functor> QUntypedBindable::subscribe(Functor f) const
Ведёт себя как вызов f, за которым следует onValueChanged(f),
См. также onValueChanged().
QUntypedPropertyBinding QUntypedBindable::takeBinding()
Удаляет текущую привязку из свойства и возвращает её. Возвращает QUntypedPropertyBinding по умолчанию, если привязка не установлена.
Эта функция была добавлена в Qt 6.1.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/quntypedbindable.html