QAccessibleTextInterface Class
QAccessibleTextInterface 类实现了对文本处理的支持。更多
头文件: | #include <QAccessibleTextInterface> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
- 所有成员(包括继承成员)的列表
- QAccessibleTextInterface 是辅助功能类的一部分。
公共函数
virtual | ~QAccessibleTextInterface() |
virtual void | addSelection(int startOffset, int endOffset) = 0 |
virtual QString | attributes(int offset, int *startOffset, int *endOffset) const = 0 |
virtual int | characterCount() const = 0 |
virtual QRect | characterRect(int offset) const = 0 |
virtual int | cursorPosition() const = 0 |
virtual int | offsetAtPoint(const QPoint &point) const = 0 |
virtual void | removeSelection(int selectionIndex) = 0 |
virtual void | scrollToSubstring(int startIndex, int endIndex) = 0 |
virtual void | selection(int selectionIndex, int *startOffset, int *endOffset) const = 0 |
virtual int | selectionCount() const = 0 |
virtual void | setCursorPosition(int position) = 0 |
virtual void | setSelection(int selectionIndex, int startOffset, int endOffset) = 0 |
virtual QString | text(int startOffset, int endOffset) const = 0 |
virtual QString | textAfterOffset(int offset, QAccessible::TextBoundaryType boundaryType, int *startOffset, int *endOffset) const |
virtual QString | textAtOffset(int offset, QAccessible::TextBoundaryType boundaryType, int *startOffset, int *endOffset) const |
virtual QString | textBeforeOffset(int offset, QAccessible::TextBoundaryType boundaryType, int *startOffset, int *endOffset) const |
详细说明
该接口对应于 IAccessibleText 接口。应为显示比普通标签更多文本的 widget 实现该接口。标签应仅由QAccessibleInterface 表示,并以名称形式返回文本(QAccessibleInterface::text() ,类型为QAccessible::Name )。QAccessibleTextInterface 通常用于屏幕阅读器可能希望逐行阅读的文本,以及支持文本选择和输入的 widget。例如,QLineEdit 。
成员函数文档
[virtual noexcept]
QAccessibleTextInterface::~QAccessibleTextInterface()
[pure virtual]
void QAccessibleTextInterface::addSelection(int startOffset, int endOffset)
选择从startOffset 到endOffset 的文本。startOffset 是第一个被选中的字符。endOffset 是第一个不被选中的字符。
如果对象支持多选(例如在文字处理器中),则会添加一个新的选区,否则会替换之前的选区。
选区长度为endOffset -startOffset 个字符。
[pure virtual]
QString QAccessibleTextInterface::attributes(int offset, int *startOffset, int *endOffset) const
返回offset 位置的文本属性。此外,属性范围将在startOffset 和endOffset 中返回。
[pure virtual]
int QAccessibleTextInterface::characterCount() const
返回文本的长度(包括空格在内的总大小)。
[pure virtual]
QRect QAccessibleTextInterface::characterRect(int offset) const
以屏幕坐标为单位,返回位于offset 位置的字符的位置和大小。
[pure virtual]
int QAccessibleTextInterface::cursorPosition() const
返回当前光标位置。
另请参阅 setCursorPosition().
[pure virtual]
int QAccessibleTextInterface::offsetAtPoint(const QPoint &point) const
以屏幕坐标为单位,返回字符在point 处的偏移量。
[pure virtual]
void QAccessibleTextInterface::removeSelection(int selectionIndex)
清除选中的索引selectionIndex 。
[pure virtual]
void QAccessibleTextInterface::scrollToSubstring(int startIndex, int endIndex)
确保startIndex 和endIndex 之间的文本可见。
[pure virtual]
void QAccessibleTextInterface::selection(int selectionIndex, int *startOffset, int *endOffset) const
返回一个选区。选区的大小在startOffset 和endOffset 中返回。如果没有选区,startOffset 和endOffset 都是nullptr
。
可访问性 API 支持多个选区。但对于大多数部件,只支持一个选区,selectionIndex 等于 0。
另请参阅 setSelection() 。
[pure virtual]
int QAccessibleTextInterface::selectionCount() const
返回此文本中的选择项数量。
[pure virtual]
void QAccessibleTextInterface::setCursorPosition(int position)
将光标移至position 。
另请参阅 cursorPosition() 。
[pure virtual]
void QAccessibleTextInterface::setSelection(int selectionIndex, int startOffset, int endOffset)
将selectionIndex 设置为从startOffset 到endOffset 的范围。
另请参阅 selection()、addSelection() 和removeSelection()。
[pure virtual]
QString QAccessibleTextInterface::text(int startOffset, int endOffset) const
返回从startOffset 到endOffset 的文本。startOffset 是将返回的第一个字符。endOffset 是不会返回的第一个字符。
[virtual]
QString QAccessibleTextInterface::textAfterOffset(int offset, QAccessible::TextBoundaryType boundaryType, int *startOffset, int *endOffset) const
返回boundaryType 类型中紧跟offset 偏移量之后的文本项,并将startOffset 和endOffset 的值设置为该文本项的起始和终止位置;如果没有该文本项,则返回空字符串。如果出错,则将startOffset 和endOffset 的值设置为-1。
这种默认实现方式适用于小型文本编辑。文字处理器或文本编辑器应提供自己的有效实现。此函数不区分段落和行。
注意: 该函数不考虑光标位置。按照惯例,offset 为 -2 表示该函数应使用光标位置作为偏移量。因此,在调用此函数之前,必须将偏移量 -2 转换为光标位置。如果偏移量为-1,则文本长度将被用作偏移量,此函数的自定义实现必须返回结果,就好像长度是作为偏移量传入的一样。
[virtual]
QString QAccessibleTextInterface::textAtOffset(int offset, QAccessible::TextBoundaryType boundaryType, int *startOffset, int *endOffset) const
返回offset 偏移量处boundaryType 类型的文本项,并将startOffset 和endOffset 设置为该文本项的起始和结束位置;如果没有该文本项,则返回空字符串。如果出错,则会将startOffset 和endOffset 的值设置为-1。
这种默认实现方式适用于小型文本编辑。文字处理器或文本编辑器应提供自己的有效实现。此函数不区分段落和行。
注意: 该函数不考虑光标位置。按照惯例,offset 为 -2 表示该函数应使用光标位置作为偏移量。因此,在调用此函数之前,必须将偏移量 -2 转换为光标位置。如果偏移量为-1,则文本长度将被用作偏移量,此函数的自定义实现必须返回结果,就好像长度是作为偏移量传入的一样。
[virtual]
QString QAccessibleTextInterface::textBeforeOffset(int offset, QAccessible::TextBoundaryType boundaryType, int *startOffset, int *endOffset) const
返回与offset 偏移量相近的boundaryType 类型的文本项,并将startOffset 和endOffset 的值设置为该项的起始和终止位置;如果没有此类文本项,则返回空字符串。如果出错,则将startOffset 和endOffset 的值设置为-1。
这种默认实现方式适用于小型文本编辑。文字处理器或文本编辑器应提供自己的有效实现。此函数不区分段落和行。
注意: 该函数不考虑光标位置。按照惯例,offset 为 -2 表示该函数应使用光标位置作为偏移量。因此,在调用此函数之前,必须将偏移量 -2 转换为光标位置。如果偏移量为-1,则文本长度将被用作偏移量,此函数的自定义实现必须返回结果,就好像长度是作为偏移量传入的一样。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.