AccessibleText (Java Platform SE 8 )
Keywords: javax.accessibility.AccessibleText interface
Date: 2026-04-17

javax.accessibility

## 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 and Description
    --- | ---
    `static int` | `CHARACTER` Constant used to indicate that the part of the text that should be retrieved is a character.
    `static int` | `SENTENCE` Constant used to indicate that the part of the text that should be retrieved is a sentence.
    `static int` | `WORD` Constant used to indicate that the part of the text that should be retrieved is a word.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and 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 indicies)
    `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 Detail

    - #### 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 Detail

    - #### 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 indicies)
      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

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.