AccessibleText (Java SE 26 & JDK 26)
Description: declaration: module: java.desktop, package: javax.accessibility, interface: AccessibleText
Keywords: javax.accessibility.AccessibleText interface

# Interface AccessibleText

All Known Subinterfaces:
  `AccessibleEditableText, AccessibleHypertext`

All Known Implementing Classes:
  `AbstractButton.AccessibleAbstractButton, JButton.AccessibleJButton, JCheckBox.AccessibleJCheckBox, JCheckBoxMenuItem.AccessibleJCheckBoxMenuItem, JEditorPane.AccessibleJEditorPane, JEditorPane.AccessibleJEditorPaneHTML, JEditorPane.JEditorPaneAccessibleHypertextSupport, JLabel.AccessibleJLabel, JMenu.AccessibleJMenu, JMenuItem.AccessibleJMenuItem, JPasswordField.AccessibleJPasswordField, JRadioButton.AccessibleJRadioButton, JRadioButtonMenuItem.AccessibleJRadioButtonMenuItem, JSpinner.AccessibleJSpinner, JTextArea.AccessibleJTextArea, JTextComponent.AccessibleJTextComponent, JTextField.AccessibleJTextField, JToggleButton.AccessibleJToggleButton, ProgressMonitor.AccessibleProgressMonitor, TextArea.AccessibleAWTTextArea, TextComponent.AccessibleAWTTextComponent, TextField.AccessibleAWTTextField`

public interface AccessibleText
The `AccessibleText` interface should be implemented by all classes that present textual information on the display. This interface provides the standard mechanism for an assistive technology to access that text via its content, attributes, and spatial location. Applications can determine if an object supports the `AccessibleText` interface by first obtaining its `AccessibleContext` (see `Accessible`) and then calling the `AccessibleContext.getAccessibleText()` method of `AccessibleContext`. If the return value is not `null`, the object supports this interface.

See Also:
  - `Accessible`
  - `Accessible.getAccessibleContext()`
  - `AccessibleContext`
  - `AccessibleContext.getAccessibleText()`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `CHARACTER`
  Constant used to indicate that the part of the text that should be retrieved is a character.
  `static final int`
  `SENTENCE`
  Constant used to indicate that the part of the text that should be retrieved is a sentence.
  `static final int`
  `WORD`
  Constant used to indicate that the part of the text that should be retrieved is a word.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getAfterIndex(int part, int index)`
  Returns the `String` after a given index.
  `String`
  `getAtIndex(int part, int index)`
  Returns the `String` at a given index.
  `String`
  `getBeforeIndex(int part, int index)`
  Returns the `String` before a given index.
  `int`
  `getCaretPosition()`
  Returns the zero-based offset of the caret.
  `AttributeSet`
  `getCharacterAttribute(int i)`
  Returns the `AttributeSet` for a given character at a given index.
  `Rectangle`
  `getCharacterBounds(int i)`
  Determines the bounding box of the character at the given index into the string.
  `int`
  `getCharCount()`
  Returns the number of characters (valid indices).
  `int`
  `getIndexAtPoint(Point p)`
  Given a point in local coordinates, return the zero-based index of the character under that point.
  `String`
  `getSelectedText()`
  Returns the portion of the text that is selected.
  `int`
  `getSelectionEnd()`
  Returns the end offset within the selected text.
  `int`
  `getSelectionStart()`
  Returns the start offset within the selected text.

- ## Field Details

  - ### CHARACTER

    static final int CHARACTER
    Constant used to indicate that the part of the text that should be retrieved is a character.
    See Also:
      - `getAtIndex(int, int)`
      - `getAfterIndex(int, int)`
      - `getBeforeIndex(int, int)`
      - Constant Field Values

  - ### WORD

    static final int WORD
    Constant used to indicate that the part of the text that should be retrieved is a word.
    See Also:
      - `getAtIndex(int, int)`
      - `getAfterIndex(int, int)`
      - `getBeforeIndex(int, int)`
      - Constant Field Values

  - ### SENTENCE

    static final int SENTENCE
    Constant used to indicate that the part of the text that should be retrieved is a sentence.

    A sentence is a string of words which expresses an assertion, a question, a command, a wish, an exclamation, or the performance of an action. In English locales, the string usually begins with a capital letter and concludes with appropriate end punctuation; such as a period, question or exclamation mark. Other locales may use different capitalization and/or punctuation.

    See Also:
      - `getAtIndex(int, int)`
      - `getAfterIndex(int, int)`
      - `getBeforeIndex(int, int)`
      - Constant Field Values

- ## Method Details

  - ### getIndexAtPoint

    int getIndexAtPoint(Point p)
    Given a point in local coordinates, return the zero-based index of the character under that point. If the point is invalid, this method returns -1.
    Parameters:
      `p` - the point in local coordinates
    Returns:
      the zero-based index of the character under `Point p`; if point is invalid return -1.

  - ### getCharacterBounds

    Rectangle getCharacterBounds(int i)
    Determines the bounding box of the character at the given index into the string. The bounds are returned in local coordinates. If the index is invalid an empty rectangle is returned.
    Parameters:
      `i` - the index into the string
    Returns:
      the screen coordinates of the character's bounding box, if index is invalid return an empty rectangle.

  - ### getCharCount

    int getCharCount()
    Returns the number of characters (valid indices).
    Returns:
      the number of characters

  - ### getCaretPosition

    int getCaretPosition()
    Returns the zero-based offset of the caret.

    Note: That to the right of the caret will have the same index value as the offset (the caret is between two characters).

    Returns:
      the zero-based offset of the caret

  - ### getAtIndex

    String getAtIndex(int part, int index)
    Returns the `String` at a given index.
    Parameters:
      `part` - the CHARACTER, WORD, or SENTENCE to retrieve
      `index` - an index within the text
    Returns:
      the letter, word, or sentence

  - ### getAfterIndex

    String getAfterIndex(int part, int index)
    Returns the `String` after a given index.
    Parameters:
      `part` - the CHARACTER, WORD, or SENTENCE to retrieve
      `index` - an index within the text
    Returns:
      the letter, word, or sentence

  - ### getBeforeIndex

    String getBeforeIndex(int part, int index)
    Returns the `String` before a given index.
    Parameters:
      `part` - the CHARACTER, WORD, or SENTENCE to retrieve
      `index` - an index within the text
    Returns:
      the letter, word, or sentence

  - ### getCharacterAttribute

    AttributeSet getCharacterAttribute(int i)
    Returns the `AttributeSet` for a given character at a given index.
    Parameters:
      `i` - the zero-based index into the text
    Returns:
      the `AttributeSet` of the character

  - ### getSelectionStart

    int getSelectionStart()
    Returns the start offset within the selected text. If there is no selection, but there is a caret, the start and end offsets will be the same.
    Returns:
      the index into the text of the start of the selection

  - ### getSelectionEnd

    int getSelectionEnd()
    Returns the end offset within the selected text. If there is no selection, but there is a caret, the start and end offsets will be the same.
    Returns:
      the index into the text of the end of the selection

  - ### getSelectedText

    String getSelectedText()
    Returns the portion of the text that is selected.
    Returns:
      the `String` portion of the text that is selected