Module java.desktop
Package java.awt.event

## Enum FocusEvent.Cause

- java.lang.Object
- - java.lang.Enum<FocusEvent.Cause>
  - - java.awt.event.FocusEvent.Cause

- All Implemented Interfaces:
    `Serializable`, `Comparable<FocusEvent.Cause>`
  Enclosing class:
    FocusEvent

      public static enum FocusEvent.Cause
      extends Enum<FocusEvent.Cause>

  This enum represents the cause of a `FocusEvent`- the reason why it occurred. Possible reasons include mouse events, keyboard focus traversal, window activation. If no cause is provided then the reason is `UNKNOWN`.
  Since:
    9

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `ACTIVATION` | An activation of a toplevel window.
    `CLEAR_GLOBAL_FOCUS_OWNER` | Clearing global focus owner.
    `MOUSE_EVENT` | An activating mouse event.
    `ROLLBACK` | Restoring focus after a focus request has been rejected.
    `TRAVERSAL` | A focus traversal action with unspecified direction.
    `TRAVERSAL_BACKWARD` | A backward focus traversal action.
    `TRAVERSAL_DOWN` | A down-cycle focus traversal action.
    `TRAVERSAL_FORWARD` | A forward focus traversal action.
    `TRAVERSAL_UP` | An up-cycle focus traversal action.
    `UNEXPECTED` | A system action causing an unexpected focus change.
    `UNKNOWN` | The default value.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static FocusEvent.Cause` | `valueOf​(String name)` | Returns the enum constant of this type with the specified name.
    `static FocusEvent.Cause[]` | `values​()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### UNKNOWN

          public static final FocusEvent.Cause UNKNOWN

      The default value.

    - #### MOUSE_EVENT

          public static final FocusEvent.Cause MOUSE_EVENT

      An activating mouse event.

    - #### TRAVERSAL

          public static final FocusEvent.Cause TRAVERSAL

      A focus traversal action with unspecified direction.

    - #### TRAVERSAL_UP

          public static final FocusEvent.Cause TRAVERSAL_UP

      An up-cycle focus traversal action.

    - #### TRAVERSAL_DOWN

          public static final FocusEvent.Cause TRAVERSAL_DOWN

      A down-cycle focus traversal action.

    - #### TRAVERSAL_FORWARD

          public static final FocusEvent.Cause TRAVERSAL_FORWARD

      A forward focus traversal action.

    - #### TRAVERSAL_BACKWARD

          public static final FocusEvent.Cause TRAVERSAL_BACKWARD

      A backward focus traversal action.

    - #### ROLLBACK

          public static final FocusEvent.Cause ROLLBACK

      Restoring focus after a focus request has been rejected.

    - #### UNEXPECTED

          public static final FocusEvent.Cause UNEXPECTED

      A system action causing an unexpected focus change.

    - #### ACTIVATION

          public static final FocusEvent.Cause ACTIVATION

      An activation of a toplevel window.

    - #### CLEAR_GLOBAL_FOCUS_OWNER

          public static final FocusEvent.Cause CLEAR_GLOBAL_FOCUS_OWNER

      Clearing global focus owner.

  - ### Method Detail

    - #### values

          public static FocusEvent.Cause[] values​()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (FocusEvent.Cause c : FocusEvent.Cause.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static FocusEvent.Cause valueOf​(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null