javax.swing

## Class PopupFactory

- java.lang.Object
- - javax.swing.PopupFactory

-     public class PopupFactory
      extends Object

  `PopupFactory`, as the name implies, is used to obtain instances of `Popup`s. `Popup`s are used to display a `Component` above all other `Component`s in a particular containment hierarchy. The general contract is that once you have obtained a `Popup` from a `PopupFactory`, you must invoke `hide` on the `Popup`. The typical usage is:

         PopupFactory factory = PopupFactory.getSharedInstance();
         Popup popup = factory.getPopup(owner, contents, x, y);
         popup.show();
         ...
         popup.hide();

  Since:
    1.4
  See Also:
    `Popup`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PopupFactory()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Popup` | `getPopup(Component owner, Component contents, int x, int y)` Creates a `Popup` for the Component `owner` containing the Component `contents`.
    `static PopupFactory` | `getSharedInstance()` Returns the shared `PopupFactory` which can be used to obtain `Popup`s.
    `static void` | `setSharedInstance(PopupFactory factory)` Sets the `PopupFactory` that will be used to obtain `Popup`s.

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

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

- - ### Constructor Detail

    - #### PopupFactory

          public PopupFactory()

  - ### Method Detail

    - #### setSharedInstance

          public static void setSharedInstance(PopupFactory factory)

      Sets the `PopupFactory` that will be used to obtain `Popup`s. This will throw an `IllegalArgumentException` if `factory` is null.
      Parameters:
        `factory` - Shared PopupFactory
      Throws:
        `IllegalArgumentException` - if `factory` is null
      See Also:
        `getPopup(java.awt.Component, java.awt.Component, int, int)`

    - #### getSharedInstance

          public static PopupFactory getSharedInstance()

      Returns the shared `PopupFactory` which can be used to obtain `Popup`s.
      Returns:
        Shared PopupFactory

    - #### getPopup

          public Popup getPopup(Component owner,
                       Component contents,
                       int x,
                       int y)
                         throws IllegalArgumentException

      Creates a `Popup` for the Component `owner` containing the Component `contents`. `owner` is used to determine which `Window` the new `Popup` will parent the `Component` the `Popup` creates to. A null `owner` implies there is no valid parent. `x` and `y` specify the preferred initial location to place the `Popup` at. Based on screen size, or other paramaters, the `Popup` may not display at `x` and `y`.
      Parameters:
        `owner` - Component mouse coordinates are relative to, may be null
        `contents` - Contents of the Popup
        `x` - Initial x screen coordinate
        `y` - Initial y screen coordinate
      Returns:
        Popup containing Contents
      Throws:
        `IllegalArgumentException` - if contents is null

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, 2017, Oracle and/or its affiliates. All rights reserved.