# Class AWTEventMonitor

java.lang.Object
com.sun.java.accessibility.util.AWTEventMonitor

Direct Known Subclasses:
  `SwingEventMonitor`

public class AWTEventMonitor extends Object

The `AWTEventMonitor` implements a suite of listeners that are conditionally installed on every AWT component instance in the Java Virtual Machine. The events captured by these listeners are made available through a unified set of listeners supported by `AWTEventMonitor`. With this, all the individual events on each of the AWT component instances are funneled into one set of listeners broken down by category (see `EventID` for the categories).

This class depends upon `EventQueueMonitor`, which provides the base level support for capturing the top-level containers as they are created.

## Constructor Summary

Constructors
Constructor
Description
`AWTEventMonitor()`
Constructs an `AWTEventMonitor`.

## Method Summary

Modifier and Type
Method
Description
`static void`
`addActionListener(ActionListener l)`
Adds the specified listener to receive all `ACTION` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addAdjustmentListener(AdjustmentListener l)`
Adds the specified listener to receive all `ADJUSTMENT` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addComponentListener(ComponentListener l)`
Adds the specified listener to receive all `COMPONENT` events on each component instance in the Java Virtual Machine as they occur.
`static void`
`addContainerListener(ContainerListener l)`
Adds the specified listener to receive all `CONTAINER` events on each component instance in the Java Virtual Machine as they occur.
`static void`
`addFocusListener(FocusListener l)`
Adds the specified listener to receive all `FOCUS` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addItemListener(ItemListener l)`
Adds the specified listener to receive all `ITEM` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addKeyListener(KeyListener l)`
Adds the specified listener to receive all `KEY` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addMouseListener(MouseListener l)`
Adds the specified listener to receive all `MOUSE` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addMouseMotionListener(MouseMotionListener l)`
Adds the specified listener to receive all mouse `MOTION` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addTextListener(TextListener l)`
Adds the specified listener to receive all `TEXT` events on each component instance in the Java Virtual Machine when they occur.
`static void`
`addWindowListener(WindowListener l)`
Adds the specified listener to receive all `WINDOW` events on each component instance in the Java Virtual Machine when they occur.
`static Component`
`getComponentWithFocus()`
Returns the component that currently has keyboard focus.
`static void`
`removeActionListener(ActionListener l)`
Removes the specified listener so it no longer receives `ACTION` events when they occur.
`static void`
`removeAdjustmentListener(AdjustmentListener l)`
Removes the specified listener so it no longer receives `ADJUSTMENT` events when they occur.
`static void`
`removeComponentListener(ComponentListener l)`
Removes the specified listener so it no longer receives `COMPONENT` events when they occur.
`static void`
`removeContainerListener(ContainerListener l)`
Removes the specified listener so it no longer receives `CONTAINER` events when they occur.
`static void`
`removeFocusListener(FocusListener l)`
Removes the specified listener so it no longer receives `FOCUS` events when they occur.
`static void`
`removeItemListener(ItemListener l)`
Removes the specified listener so it no longer receives `ITEM` events when they occur.
`static void`
`removeKeyListener(KeyListener l)`
Removes the specified listener so it no longer receives `KEY` events when they occur.
`static void`
`removeMouseListener(MouseListener l)`
Removes the specified listener so it no longer receives `MOUSE` events when they occur.
`static void`
`removeMouseMotionListener(MouseMotionListener l)`
Removes the specified listener so it no longer receives `MOTION` events when they occur.
`static void`
`removeTextListener(TextListener l)`
Removes the specified listener so it no longer receives `TEXT` events when they occur.
`static void`
`removeWindowListener(WindowListener l)`
Removes the specified listener so it no longer receives `WINDOW` events when they occur.

### Methods declared in class Object

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

## Constructor Details

### AWTEventMonitor

public AWTEventMonitor()
Constructs an `AWTEventMonitor`.

## Method Details

### getComponentWithFocus

public static Component getComponentWithFocus()
Returns the component that currently has keyboard focus. The return value can be null.

Returns:
  the component that has keyboard focus

### addComponentListener

public static void addComponentListener(ComponentListener l)
Adds the specified listener to receive all `COMPONENT` events on each component instance in the Java Virtual Machine as they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeComponentListener(ComponentListener)`

### removeComponentListener

public static void removeComponentListener(ComponentListener l)
Removes the specified listener so it no longer receives `COMPONENT` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addComponentListener(ComponentListener)`

### addContainerListener

public static void addContainerListener(ContainerListener l)
Adds the specified listener to receive all `CONTAINER` events on each component instance in the Java Virtual Machine as they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeContainerListener(ContainerListener)`

### removeContainerListener

public static void removeContainerListener(ContainerListener l)
Removes the specified listener so it no longer receives `CONTAINER` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addContainerListener(ContainerListener)`

### addFocusListener

public static void addFocusListener(FocusListener l)
Adds the specified listener to receive all `FOCUS` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeFocusListener(FocusListener)`

### removeFocusListener

public static void removeFocusListener(FocusListener l)
Removes the specified listener so it no longer receives `FOCUS` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addFocusListener(FocusListener)`

### addKeyListener

public static void addKeyListener(KeyListener l)
Adds the specified listener to receive all `KEY` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeKeyListener(KeyListener)`

### removeKeyListener

public static void removeKeyListener(KeyListener l)
Removes the specified listener so it no longer receives `KEY` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addKeyListener(KeyListener)`

### addMouseListener

public static void addMouseListener(MouseListener l)
Adds the specified listener to receive all `MOUSE` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeMouseListener(MouseListener)`

### removeMouseListener

public static void removeMouseListener(MouseListener l)
Removes the specified listener so it no longer receives `MOUSE` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addMouseListener(MouseListener)`

### addMouseMotionListener

public static void addMouseMotionListener(MouseMotionListener l)
Adds the specified listener to receive all mouse `MOTION` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeMouseMotionListener(MouseMotionListener)`

### removeMouseMotionListener

public static void removeMouseMotionListener(MouseMotionListener l)
Removes the specified listener so it no longer receives `MOTION` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addMouseMotionListener(MouseMotionListener)`

### addWindowListener

public static void addWindowListener(WindowListener l)
Adds the specified listener to receive all `WINDOW` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeWindowListener(WindowListener)`

### removeWindowListener

public static void removeWindowListener(WindowListener l)
Removes the specified listener so it no longer receives `WINDOW` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addWindowListener(WindowListener)`

### addActionListener

public static void addActionListener(ActionListener l)
Adds the specified listener to receive all `ACTION` events on each component instance in the Java Virtual Machine when they occur.

Note: This listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeActionListener(ActionListener)`

### removeActionListener

public static void removeActionListener(ActionListener l)
Removes the specified listener so it no longer receives `ACTION` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addActionListener(ActionListener)`

### addAdjustmentListener

public static void addAdjustmentListener(AdjustmentListener l)
Adds the specified listener to receive all `ADJUSTMENT` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeAdjustmentListener(AdjustmentListener)`

### removeAdjustmentListener

public static void removeAdjustmentListener(AdjustmentListener l)
Removes the specified listener so it no longer receives `ADJUSTMENT` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addAdjustmentListener(AdjustmentListener)`

### addItemListener

public static void addItemListener(ItemListener l)
Adds the specified listener to receive all `ITEM` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeItemListener(ItemListener)`

### removeItemListener

public static void removeItemListener(ItemListener l)
Removes the specified listener so it no longer receives `ITEM` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addItemListener(ItemListener)`

### addTextListener

public static void addTextListener(TextListener l)
Adds the specified listener to receive all `TEXT` events on each component instance in the Java Virtual Machine when they occur.

Note: this listener is automatically added to all component instances created after this method is called. In addition, it is only added to component instances that support this listener type.

Parameters:
  `l` - the listener to add
See Also:
  - `removeTextListener(TextListener)`

### removeTextListener

public static void removeTextListener(TextListener l)
Removes the specified listener so it no longer receives `TEXT` events when they occur.

Parameters:
  `l` - the listener to remove
See Also:
  - `addTextListener(TextListener)`