Spec-Zone.ru › Qt 5.6

Класс QAccessibleInterface

Класс QAccessibleInterface определяет интерфейс, который предоставляет информацию об объектах с поддержкой доступности. Подробнее...

Заголовок: #include <QAccessibleInterface>
qmake: QT += gui
Наследуется от:

QAccessibleObject

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

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

QAccessibleActionInterface * actionInterface()
virtual QColor backgroundColor() const
virtual QAccessibleInterface * child(int index) const = 0
virtual QAccessibleInterface * childAt(int x, int y) const = 0
virtual int childCount() const = 0
virtual QAccessibleInterface * focusChild() const
virtual QColor foregroundColor() const
virtual int indexOfChild(const QAccessibleInterface *child) const = 0
virtual void * interface_cast(QAccessible::InterfaceType type)
virtual bool isValid() const = 0
virtual QObject * object() const = 0
virtual QAccessibleInterface * parent() const = 0
virtual QRect rect() const = 0
virtual QVector<QPair<QAccessibleInterface *, QAccessible::Relation> > relations(QAccessible::Relation match = QAccessible::AllRelations) const
virtual QAccessible::Role role() const = 0
virtual void setText(QAccessible::Text t, const QString &text) = 0
virtual QAccessible::State state() const = 0
QAccessibleTableCellInterface * tableCellInterface()
QAccessibleTableInterface * tableInterface()
virtual QString text(QAccessible::Text t) const = 0
QAccessibleTextInterface * textInterface()
QAccessibleValueInterface * valueInterface()
virtual QWindow * window() const

Защищенные функции

virtual ~QAccessibleInterface()

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

Класс QAccessibleInterface определяет интерфейс, который предоставляет информацию об объектах с поддержкой доступности.

Этот класс является частью Доступности для приложений QWidget.

Инструменты доступности (также называемые клиентами AT), такие как программы чтения с экрана или устройства Брайля, нуждаются в информации высокого уровня об объектах с поддержкой доступности в приложении. Объекты с поддержкой доступности предоставляют специализированные методы ввода и вывода, что позволяет пользователям использовать инструменты доступности с включёнными приложениями (серверами AT).

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

Клиент AT использует три основных понятия для получения информации о любом объекте с поддержкой доступности в приложении:

  • Свойства Клиент может считывать информацию об объектах с поддержкой доступности. В некоторых случаях клиент также может изменять эти свойства; например, текст в поле ввода.
  • Действия Клиент может вызывать действия, такие как нажатие кнопки или.
  • Взаимосвязи и навигация Клиент может перемещаться от одного объекта с поддержкой доступности к другому, используя взаимосвязи между объектами.

Класс QAccessibleInterface определяет API для этих трёх понятий.

Взаимосвязи и навигация

Функции childCount() и indexOfChild() возвращают количество дочерних элементов объекта с поддержкой доступности и индекс дочернего объекта в его родительском объекте. Функция childAt() возвращает дочерний объект QAccessibleInterface, который находится в заданной позиции. Дочерний объект не обязательно должен быть непосредственным потомком. Это позволяет обойти промежуточные слои, когда родитель уже знает самый верхний дочерний элемент. childAt() используется для проверки попадания (поиск объекта под указателем мыши).

Функция relations() предоставляет информацию о взаимосвязях объекта с другими объектами, а parent() и child() позволяют перемещаться от одного объекта к другому.

Свойства

Центральным свойством объекта с поддержкой доступности является его роль, возвращаемая функцией role(). Разные объекты могут иметь одну и ту же роль, например, элемент "Добавить строку" в полосе прокрутки и кнопка OK в диалоговом окне имеют одну и ту же роль "кнопка". Роль указывает на то, какое взаимодействие пользователь может выполнить с элементом пользовательского интерфейса.

Свойство state() объекта — это комбинация различных флагов состояния и может описывать как отличия состояния объекта от "нормального" состояния, например, объект может быть недоступен, так и его поведение, например, он может быть выбираемым.

Свойство text() предоставляет текстовую информацию об объекте. У объекта обычно есть имя, но он может предоставлять расширенную информацию, такую как описание, подсказка или информация о любых сочетаниях клавиш, которые он предоставляет. Некоторые объекты позволяют изменять свойство text() через функцию setText(), но в большинстве случаев эта информация является только для чтения.

Свойство rect() предоставляет информацию о геометрии объекта с поддержкой доступности. Эта информация обычно доступна только для визуальных объектов.

Интерфейсы

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

Существует несколько других интерфейсов, которые должны быть реализованы по мере необходимости. QAccessibleTextInterface должен использоваться для больших текстовых редакторов, таких как просмотры документов. Этот интерфейс не должен реализовываться для меток/полей ввода одной строки.

Для ползунков, полос прокрутки и других селекторов числовых значений должен быть реализован интерфейс QAccessibleValueInterface.

Списки, таблицы и деревья должны реализовывать интерфейс QAccessibleTableInterface.

См. также QAccessible, QAccessibleActionInterface, QAccessibleTextInterface, QAccessibleValueInterface и QAccessibleTableInterface.

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

[virtual protected] QAccessibleInterface::~QAccessibleInterface()

Удаляет QAccessibleInterface.

QAccessibleActionInterface *QAccessibleInterface::actionInterface()

[virtual] QColor QAccessibleInterface::backgroundColor() const

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

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

[pure virtual] QAccessibleInterface *QAccessibleInterface::child(int index) const

Возвращает доступного потомка с индексом index. Индекс нулевой. Количество потомков объекта можно проверить с помощью childCount.

Возвращает 0, если запрашивается недопустимый потомок (например, если потомок стал недоступным в это время).

См. также childCount() и parent().

[pure virtual] QAccessibleInterface *QAccessibleInterface::childAt(int x, int y) const

Возвращает QAccessibleInterface потомка, содержащего экранные координаты (x, y). Если потомков в этой позиции нет, функция возвращает 0. Возвращаемый доступный объект должен быть потомком, но не обязательно непосредственным.

Эта функция надёжна только для видимых объектов (невидимые объекты могут быть неверно расположены).

Все визуальные объекты предоставляют эту информацию.

Для объектов, наследующих QAccessibleObject, предоставляется реализация по умолчанию. Она будет перебирать всех потомков. Если виджет управляет своими потомками (например, таблица), то более эффективной будет специализированная реализация.

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

[pure virtual] int QAccessibleInterface::childCount() const

Возвращает количество потомков, принадлежащих этому объекту. Потомок может предоставлять информацию об удобстве доступа самостоятельно (например, виджет-потомок) или быть подэлементом этого доступного объекта.

Все объекты предоставляют эту информацию.

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

[virtual] QAccessibleInterface *QAccessibleInterface::focusChild() const

Возвращает объект, имеющий фокус клавиатуры.

Возвращаемый объект может быть любым потомком, включая сам себя.

[virtual] QColor QAccessibleInterface::foregroundColor() const

Возвращает цвет переднего плана доступного объекта, если применимо, или недопустимый QColor.

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

[pure virtual] int QAccessibleInterface::indexOfChild(const QAccessibleInterface *child) const

Возвращает индекс объекта child в списке потомков этого объекта, начиная с 0, или -1, если child не является потомком этого объекта.

Все объекты предоставляют эту информацию о своих потомках.

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

[virtual] void *QAccessibleInterface::interface_cast(QAccessible::InterfaceType type)

Возвращает специализированный интерфейс доступности type из универсального QAccessibleInterface.

Эта функция должна быть переопределена, если нужно предоставить больше информации об объекте или виджете через специализированные интерфейсы. Например, поле ввода должно реализовывать QAccessibleTextInterface.

Например, в Qt QLineEdit поддержка доступности реализована в QAccessibleLineEdit.

void *QAccessibleLineEdit::interface_cast(QAccessible::InterfaceType t)
{
    if (t == QAccessible::TextInterface)
        return static_cast<QAccessibleTextInterface*>(this);
    return QAccessibleWidget::interface_cast(t);
}

См. также QAccessible::InterfaceType, QAccessibleTextInterface, QAccessibleValueInterface, QAccessibleActionInterface, QAccessibleTableInterface и QAccessibleTableCellInterface.

[pure virtual] bool QAccessibleInterface::isValid() const

Возвращает true, если все данные, необходимые для использования реализации этого интерфейса, являются допустимыми (например, все указатели не нулевые); в противном случае возвращает false.

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

[pure virtual] QObject *QAccessibleInterface::object() const

Возвращает указатель на QObject, для которого эта реализация интерфейса предоставляет информацию.

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

[pure virtual] QAccessibleInterface *QAccessibleInterface::parent() const

Возвращает QAccessibleInterface родителя в иерархии доступных объектов.

Возвращает 0, если родитель отсутствует (например, для объекта приложения верхнего уровня).

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

[pure virtual] QRect QAccessibleInterface::rect() const

Возвращает геометрию объекта. Геометрия в экранных координатах.

Эта функция надёжна только для видимых объектов (невидимые объекты могут быть неверно расположены).

Все визуальные объекты предоставляют эту информацию.

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

[virtual] QVector<QPair<QAccessibleInterface *, QAccessible::Relation> > QAccessibleInterface::relations(QAccessible::Relation match = QAccessible::AllRelations) const

Возвращает значимые отношения с другими виджетами. Обычно это не возвращает отношения родитель/потомок, если они не обрабатываются особым образом, например, в деревьях. Как правило, возвращаются отношения "описано-в" и "метка".

Можно отфильтровать отношения, используя match. Оно никогда не должно возвращать себя.

См. также parent() и child().

[pure virtual] QAccessible::Role QAccessibleInterface::role() const

Возвращает роль объекта. Роль объекта обычно статическая.

Все доступные объекты имеют роль.

См. также text() и state().

[pure virtual] void QAccessibleInterface::setText(QAccessible::Text t, const QString &text)

Устанавливает свойство текста t объекта на text.

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

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

[pure virtual] QAccessible::State QAccessibleInterface::state() const

Возвращает текущее состояние объекта. Возвращаемое значение — комбинация флагов в перечислении QAccessible::StateFlag.

Все доступные объекты имеют состояние.

См. также text() и role().

QAccessibleTableCellInterface *QAccessibleInterface::tableCellInterface()

QAccessibleTableInterface *QAccessibleInterface::tableInterface()

[pure virtual] QString QAccessibleInterface::text(QAccessible::Text t) const

Возвращает значение свойства текста t объекта.

Свойство QAccessible::Name — это строка, используемая клиентами для идентификации, поиска или объявления доступного объекта для пользователя. Все объекты должны иметь имя, уникальное в контейнере. Имя может использоваться клиентами по-разному, поэтому имя должно одновременно кратко описывать объект и быть уникальным.

Свойство QAccessible::Description доступного объекта предоставляет текстовую информацию о визуальном представлении объекта. Описание в первую очередь используется для предоставления дополнительного контекста для пользователей с нарушениями зрения, а также для контекстного поиска или других применений. У всех объектов не всегда есть описание. Кнопка "ОК" не нуждается в описании, но кнопка инструмента, отображающая изображение смайлика, должна.

Свойство QAccessible::Value доступного объекта представляет визуальную информацию, содержащуюся в объекте, например, текст в поле ввода. Обычно значение может быть изменено пользователем. Не у всех объектов есть значение, например, у статических текстовых меток его нет, и у некоторых объектов состояние уже является значением, например, у переключателей.

Текст QAccessible::Help предоставляет информацию о функции и использовании доступного объекта. Не все объекты предоставляют эту информацию.

Свойство QAccessible::Accelerator — это сочетание клавиш клавиатуры, активирующее стандартное действие объекта. Сочетание клавиш — это подчеркнутый символ в тексте меню, пункта меню или виджета и представляет собой либо сам символ, либо комбинацию этого символа и модификатора, такого как Alt, Ctrl или Shift. Элементы управления командами, такие как кнопки инструментов, также имеют сочетания клавиш и обычно отображают их в подсказке.

Все объекты предоставляют строку для QAccessible::Name.

См. также setText(), role() и state().

QAccessibleTextInterface *QAccessibleInterface::textInterface()

QAccessibleValueInterface *QAccessibleInterface::valueInterface()

[virtual] QWindow *QAccessibleInterface::window() const

Возвращает окно, связанное с базовым объектом. Например, QAccessibleWidget переопределяет этот метод и возвращает windowHandle() QWidget.

На некоторых платформах используется для уведомления клиента AT о изменениях состояния. Бэкенд перебирает всех предков до тех пор, пока не найдет окно. (Это означает, что по крайней мере один интерфейс среди предков должен вернуть допустимый указатель QWindow).

По умолчанию возвращает 0.

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

Spec-Zone.ru

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