# Class JScrollPane.AccessibleJScrollPane

java.lang.Object
javax.accessibility.AccessibleContext
java.awt.Component.AccessibleAWTComponent
java.awt.Container.AccessibleAWTContainer
javax.swing.JComponent.AccessibleJComponent
javax.swing.JScrollPane.AccessibleJScrollPane

All Implemented Interfaces:
  `PropertyChangeListener, Serializable, EventListener, AccessibleComponent, AccessibleExtendedComponent, ChangeListener`

Enclosing class:
  `JScrollPane`

protected class JScrollPane.AccessibleJScrollPane extends JComponent.AccessibleJComponent implements ChangeListener, PropertyChangeListener
This class implements accessibility support for the `JScrollPane` class. It provides an implementation of the Java Accessibility API appropriate to scroll pane user-interface elements.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans has been added to the `java.beans` package. Please see `XMLEncoder`.

Since:
  1.2

- ## Nested Class Summary

  ### Nested classes/interfaces declared in class JComponent.AccessibleJComponent

  `JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler`

  ### Nested classes/interfaces declared in class Component.AccessibleAWTComponent

  `Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected JViewport`
  `viewPort`
  this `JScrollPane`'s current `JViewport`

  ### Fields declared in class JComponent.AccessibleJComponent

  `accessibleFocusHandler`

  ### Fields declared in class Container.AccessibleAWTContainer

  `accessibleContainerHandler`

  ### Fields declared in class Component.AccessibleAWTComponent

  `accessibleAWTComponentHandler, accessibleAWTFocusHandler`

  ### Fields declared in class AccessibleContext

  `ACCESSIBLE_ACTION_PROPERTY, ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY, ACCESSIBLE_CARET_PROPERTY, ACCESSIBLE_CHILD_PROPERTY, ACCESSIBLE_COMPONENT_BOUNDS_CHANGED, ACCESSIBLE_DESCRIPTION_PROPERTY, ACCESSIBLE_HYPERTEXT_OFFSET, ACCESSIBLE_INVALIDATE_CHILDREN, ACCESSIBLE_NAME_PROPERTY, ACCESSIBLE_SELECTION_PROPERTY, ACCESSIBLE_STATE_PROPERTY, ACCESSIBLE_TABLE_CAPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_HEADER_CHANGED, ACCESSIBLE_TABLE_MODEL_CHANGED, ACCESSIBLE_TABLE_ROW_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_ROW_HEADER_CHANGED, ACCESSIBLE_TABLE_SUMMARY_CHANGED, ACCESSIBLE_TEXT_ATTRIBUTES_CHANGED, ACCESSIBLE_TEXT_PROPERTY, ACCESSIBLE_VALUE_PROPERTY, ACCESSIBLE_VISIBLE_DATA_PROPERTY, accessibleDescription, accessibleName, accessibleParent`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AccessibleJScrollPane()`
  AccessibleJScrollPane constructor

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AccessibleRole`
  `getAccessibleRole()`
  Get the role of this object.
  `void`
  `propertyChange(PropertyChangeEvent e)`
  This method gets called when a bound property is changed.
  `void`
  `resetViewPort()`
  Resets the viewport ChangeListener and PropertyChangeListener
  `void`
  `stateChanged(ChangeEvent e)`
  Invoked when the target of the listener has changed its state.

  ### Methods declared in class JComponent.AccessibleJComponent

  `addPropertyChangeListener, getAccessibleChild, getAccessibleChildrenCount, getAccessibleDescription, getAccessibleKeyBinding, getAccessibleName, getAccessibleStateSet, getBorderTitle, getTitledBorderText, getToolTipText, removePropertyChangeListener`

  ### Methods declared in class Container.AccessibleAWTContainer

  `getAccessibleAt`

  ### Methods declared in class Component.AccessibleAWTComponent

  `addFocusListener, contains, getAccessibleComponent, getAccessibleIndexInParent, getAccessibleParent, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocale, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible`

  ### Methods declared in class AccessibleContext

  `firePropertyChange, getAccessibleAction, getAccessibleEditableText, getAccessibleIcon, getAccessibleRelationSet, getAccessibleSelection, getAccessibleTable, getAccessibleText, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent`

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods declared in interface AccessibleComponent

  `addFocusListener, contains, getAccessibleAt, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible`

- ## Field Details

  - ### viewPort

    protected JViewport viewPort
    this `JScrollPane`'s current `JViewport`

- ## Constructor Details

  - ### AccessibleJScrollPane

    public AccessibleJScrollPane()
    AccessibleJScrollPane constructor

- ## Method Details

  - ### resetViewPort

    public void resetViewPort()
    Resets the viewport ChangeListener and PropertyChangeListener

  - ### getAccessibleRole

    public AccessibleRole getAccessibleRole()
    Get the role of this object.
    Overrides:
      `getAccessibleRole` in class `JComponent.AccessibleJComponent`
    Returns:
      an instance of AccessibleRole describing the role of the object
    See Also:
      - `AccessibleRole`

  - ### stateChanged

    public void stateChanged(ChangeEvent e)
    Invoked when the target of the listener has changed its state.
    Specified by:
      `stateChanged` in interface `ChangeListener`
    Parameters:
      `e` - a `ChangeEvent` object. Must not be null.
    Throws:
      `NullPointerException` - if the parameter is null.

  - ### propertyChange

    public void propertyChange(PropertyChangeEvent e)
    This method gets called when a bound property is changed.
    Specified by:
      `propertyChange` in interface `PropertyChangeListener`
    Parameters:
      `e` - A `PropertyChangeEvent` object describing the event source and the property that has changed. Must not be null.
    Throws:
      `NullPointerException` - if the parameter is null.
    Since:
      1.5