Package javafx.stage

Class Window

  • All Implemented Interfaces:
    EventTarget
    Direct Known Subclasses:
    PopupWindow, Stage

    public class Window
    extends Object
    implements EventTarget
    A top level window within which a scene is hosted, and with which the user interacts. A Window might be a Stage, PopupWindow, or other such top level window.

    Window objects must be constructed and modified on the JavaFX Application Thread.

    The JavaFX Application Thread is created as part of the startup process for the JavaFX runtime. See the Application class and the Platform.startup(Runnable) method for more information.

    Since:
    JavaFX 2.0
    • Property Detail

      • outputScaleX

        public final ReadOnlyDoubleProperty outputScaleXProperty
        The scale that the Window will apply to horizontal scene coordinates in all stages of rendering and compositing the output to the screen or other destination device. This property is updated asynchronously by the system at various times including:
        • Window creation
        • At some point during moving a window to a new Screen which may be before or after the Screen property is updated.
        • In response to a change in user preferences for output scaling.
        Since:
        9
        See Also:
        getOutputScaleX()
      • outputScaleY

        public final ReadOnlyDoubleProperty outputScaleYProperty
        The scale that the Window will apply to vertical scene coordinates in all stages of rendering and compositing the output to the screen or other destination device. This property is updated asynchronously by the system at various times including:
        • Window creation
        • At some point during moving a window to a new Screen which may be before or after the Screen property is updated.
        • In response to a change in user preferences for output scaling.
        Since:
        9
        See Also:
        getOutputScaleY()
      • forceIntegerRenderScale

        public final BooleanProperty forceIntegerRenderScaleProperty
        Boolean property that controls whether only integer render scales are set by default by the system when there is a change in the associated output scale. The renderScale properties will be updated directly and simultaneously with any changes in the associated outputScale properties, but the values can be overridden by subsequent calls to the setRenderScale setters or through appropriate use of binding. This property will not prevent setting non-integer scales directly using the renderScale property object or the convenience setter method.
        Default value:
        false
        Since:
        9
        See Also:
        isForceIntegerRenderScale(), setForceIntegerRenderScale(boolean)
      • renderScaleX

        public final DoubleProperty renderScaleXProperty
        The horizontal scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleX property and can be overridden either by calling setRenderScaleX() in response to a listener on the outputScaleX property or by binding it appropriately.
        Default value:
        outputScaleX
        Since:
        9
        See Also:
        getRenderScaleX(), setRenderScaleX(double)
      • renderScaleY

        public final DoubleProperty renderScaleYProperty
        The vertical scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleY property and can be overridden either by calling setRenderScaleY() in response to a listener on the outputScaleY property or by binding it appropriately.
        Default value:
        outputScaleY
        Since:
        9
        See Also:
        getRenderScaleY(), setRenderScaleY(double)
      • x

        public final ReadOnlyDoubleProperty xProperty
        The horizontal location of this Window on the screen. Changing this attribute will move the Window horizontally. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
        See Also:
        getX(), setX(double)
      • y

        public final ReadOnlyDoubleProperty yProperty
        The vertical location of this Window on the screen. Changing this attribute will move the Window vertically. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
        See Also:
        getY(), setY(double)
      • width

        public final ReadOnlyDoubleProperty widthProperty
        The width of this Window. Changing this attribute will narrow or widen the width of the Window. This value includes any and all decorations which may be added by the Operating System such as resizable frame handles. Typical applications will set the Scene width instead. This Window will take its width from the scene if it has never been set by the application. Resizing the window by end user does not count as a setting the width by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

        See Also:
        getWidth(), setWidth(double)
      • height

        public final ReadOnlyDoubleProperty heightProperty
        The height of this Window. Changing this attribute will shrink or heighten the height of the Window. This value includes any and all decorations which may be added by the Operating System such as the title bar. Typical applications will set the Scene height instead. This window will take its height from the scene if it has never been set by the application. Resizing this window by end user does not count as a setting the height by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

        See Also:
        getHeight(), setHeight(double)
      • focused

        public final ReadOnlyBooleanProperty focusedProperty
        Whether or not this Window has the keyboard or input focus.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

        See Also:
        isFocused()
      • scene

        public final ReadOnlyObjectProperty<Scene> sceneProperty
        The Scene to be rendered on this Window. There can only be one Scene on the Window at a time, and a Scene can only be on one Window at a time. Setting a Scene on a different Window will cause the old Window to lose the reference before the new one gains it. You may swap Scenes on a Window at any time, even if it is an instance of Stage and with fullScreen set to true. If the width or height of this Window have never been set by the application, setting the scene will cause this Window to take its width or height from that scene. Resizing this window by end user does not count as setting the width or height by the application. An IllegalStateException is thrown if this property is set on a thread other than the JavaFX Application Thread.
        Default value:
        null
        See Also:
        getScene(), setScene(Scene)
      • opacity

        public final DoubleProperty opacityProperty
        Defines the opacity of the Window as a value between 0.0 and 1.0. The opacity is reflected across the Window, its Decoration and its Scene content. On a JavaFX runtime platform that does not support opacity, assigning a value to this variable will have no visible difference. A Window with 0% opacity is fully translucent. Typically, a Window with 0% opacity will not receive any mouse events.
        Default value:
        1.0
        See Also:
        getOpacity(), setOpacity(double)
      • showing

        public final ReadOnlyBooleanProperty showingProperty
        Whether or not this Window is showing (that is, open on the user's system). The Window might be "showing", yet the user might not be able to see it due to the Window being rendered behind another Window or due to the Window being positioned off the monitor.
        Default value:
        false
        See Also:
        isShowing()
      • eventDispatcher

        public final ObjectProperty<EventDispatcher> eventDispatcherProperty
        Specifies the event dispatcher for this node. The default event dispatcher sends the received events to the registered event handlers and filters. When replacing the value with a new EventDispatcher, the new dispatcher should forward events to the replaced dispatcher to maintain the node's default event handling behavior.
        See Also:
        getEventDispatcher(), setEventDispatcher(EventDispatcher)
    • Constructor Detail

      • Window

        protected Window()
    • Method Detail

      • getWindows

        public static ObservableList<Window> getWindows()
        Returns a list containing a reference to the currently showing JavaFX windows. The list is unmodifiable - attempting to modify this list will result in an UnsupportedOperationException being thrown at runtime.
        Returns:
        A list containing all windows that are currently showing.
        Since:
        9
      • sizeToScene

        public void sizeToScene()
        Set the width and height of this Window to match the size of the content of this Window's Scene.
      • centerOnScreen

        public void centerOnScreen()
        Sets x and y properties on this Window so that it is centered on the curent screen. The current screen is determined from the intersection of current window bounds and visual bounds of all screens.
      • getOutputScaleX

        public final double getOutputScaleX()
        Gets the value of the property outputScaleX.
        Property description:
        The scale that the Window will apply to horizontal scene coordinates in all stages of rendering and compositing the output to the screen or other destination device. This property is updated asynchronously by the system at various times including:
        • Window creation
        • At some point during moving a window to a new Screen which may be before or after the Screen property is updated.
        • In response to a change in user preferences for output scaling.
        Since:
        9
      • outputScaleXProperty

        public final ReadOnlyDoubleProperty outputScaleXProperty()
        The scale that the Window will apply to horizontal scene coordinates in all stages of rendering and compositing the output to the screen or other destination device. This property is updated asynchronously by the system at various times including:
        • Window creation
        • At some point during moving a window to a new Screen which may be before or after the Screen property is updated.
        • In response to a change in user preferences for output scaling.
        Since:
        9
        See Also:
        getOutputScaleX()
      • getOutputScaleY

        public final double getOutputScaleY()
        Gets the value of the property outputScaleY.
        Property description:
        The scale that the Window will apply to vertical scene coordinates in all stages of rendering and compositing the output to the screen or other destination device. This property is updated asynchronously by the system at various times including:
        • Window creation
        • At some point during moving a window to a new Screen which may be before or after the Screen property is updated.
        • In response to a change in user preferences for output scaling.
        Since:
        9
      • outputScaleYProperty

        public final ReadOnlyDoubleProperty outputScaleYProperty()
        The scale that the Window will apply to vertical scene coordinates in all stages of rendering and compositing the output to the screen or other destination device. This property is updated asynchronously by the system at various times including:
        • Window creation
        • At some point during moving a window to a new Screen which may be before or after the Screen property is updated.
        • In response to a change in user preferences for output scaling.
        Since:
        9
        See Also:
        getOutputScaleY()
      • setForceIntegerRenderScale

        public final void setForceIntegerRenderScale​(boolean forced)
        Sets the value of the property forceIntegerRenderScale.
        Property description:
        Boolean property that controls whether only integer render scales are set by default by the system when there is a change in the associated output scale. The renderScale properties will be updated directly and simultaneously with any changes in the associated outputScale properties, but the values can be overridden by subsequent calls to the setRenderScale setters or through appropriate use of binding. This property will not prevent setting non-integer scales directly using the renderScale property object or the convenience setter method.
        Default value:
        false
        Since:
        9
      • isForceIntegerRenderScale

        public final boolean isForceIntegerRenderScale()
        Gets the value of the property forceIntegerRenderScale.
        Property description:
        Boolean property that controls whether only integer render scales are set by default by the system when there is a change in the associated output scale. The renderScale properties will be updated directly and simultaneously with any changes in the associated outputScale properties, but the values can be overridden by subsequent calls to the setRenderScale setters or through appropriate use of binding. This property will not prevent setting non-integer scales directly using the renderScale property object or the convenience setter method.
        Default value:
        false
        Since:
        9
      • forceIntegerRenderScaleProperty

        public final BooleanProperty forceIntegerRenderScaleProperty()
        Boolean property that controls whether only integer render scales are set by default by the system when there is a change in the associated output scale. The renderScale properties will be updated directly and simultaneously with any changes in the associated outputScale properties, but the values can be overridden by subsequent calls to the setRenderScale setters or through appropriate use of binding. This property will not prevent setting non-integer scales directly using the renderScale property object or the convenience setter method.
        Default value:
        false
        Since:
        9
        See Also:
        isForceIntegerRenderScale(), setForceIntegerRenderScale(boolean)
      • setRenderScaleX

        public final void setRenderScaleX​(double scale)
        Sets the value of the property renderScaleX.
        Property description:
        The horizontal scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleX property and can be overridden either by calling setRenderScaleX() in response to a listener on the outputScaleX property or by binding it appropriately.
        Default value:
        outputScaleX
        Since:
        9
      • getRenderScaleX

        public final double getRenderScaleX()
        Gets the value of the property renderScaleX.
        Property description:
        The horizontal scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleX property and can be overridden either by calling setRenderScaleX() in response to a listener on the outputScaleX property or by binding it appropriately.
        Default value:
        outputScaleX
        Since:
        9
      • renderScaleXProperty

        public final DoubleProperty renderScaleXProperty()
        The horizontal scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleX property and can be overridden either by calling setRenderScaleX() in response to a listener on the outputScaleX property or by binding it appropriately.
        Default value:
        outputScaleX
        Since:
        9
        See Also:
        getRenderScaleX(), setRenderScaleX(double)
      • setRenderScaleY

        public final void setRenderScaleY​(double scale)
        Sets the value of the property renderScaleY.
        Property description:
        The vertical scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleY property and can be overridden either by calling setRenderScaleY() in response to a listener on the outputScaleY property or by binding it appropriately.
        Default value:
        outputScaleY
        Since:
        9
      • getRenderScaleY

        public final double getRenderScaleY()
        Gets the value of the property renderScaleY.
        Property description:
        The vertical scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleY property and can be overridden either by calling setRenderScaleY() in response to a listener on the outputScaleY property or by binding it appropriately.
        Default value:
        outputScaleY
        Since:
        9
      • renderScaleYProperty

        public final DoubleProperty renderScaleYProperty()
        The vertical scale that the Window will use when rendering its Scene to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleY property and can be overridden either by calling setRenderScaleY() in response to a listener on the outputScaleY property or by binding it appropriately.
        Default value:
        outputScaleY
        Since:
        9
        See Also:
        getRenderScaleY(), setRenderScaleY(double)
      • setX

        public final void setX​(double value)
        Sets the value of the property x.
        Property description:
        The horizontal location of this Window on the screen. Changing this attribute will move the Window horizontally. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
      • getX

        public final double getX()
        Gets the value of the property x.
        Property description:
        The horizontal location of this Window on the screen. Changing this attribute will move the Window horizontally. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
      • xProperty

        public final ReadOnlyDoubleProperty xProperty()
        The horizontal location of this Window on the screen. Changing this attribute will move the Window horizontally. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
        See Also:
        getX(), setX(double)
      • setY

        public final void setY​(double value)
        Sets the value of the property y.
        Property description:
        The vertical location of this Window on the screen. Changing this attribute will move the Window vertically. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
      • getY

        public final double getY()
        Gets the value of the property y.
        Property description:
        The vertical location of this Window on the screen. Changing this attribute will move the Window vertically. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
      • yProperty

        public final ReadOnlyDoubleProperty yProperty()
        The vertical location of this Window on the screen. Changing this attribute will move the Window vertically. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.
        See Also:
        getY(), setY(double)
      • setWidth

        public final void setWidth​(double value)
        Sets the value of the property width.
        Property description:
        The width of this Window. Changing this attribute will narrow or widen the width of the Window. This value includes any and all decorations which may be added by the Operating System such as resizable frame handles. Typical applications will set the Scene width instead. This Window will take its width from the scene if it has never been set by the application. Resizing the window by end user does not count as a setting the width by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

      • getWidth

        public final double getWidth()
        Gets the value of the property width.
        Property description:
        The width of this Window. Changing this attribute will narrow or widen the width of the Window. This value includes any and all decorations which may be added by the Operating System such as resizable frame handles. Typical applications will set the Scene width instead. This Window will take its width from the scene if it has never been set by the application. Resizing the window by end user does not count as a setting the width by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

      • widthProperty

        public final ReadOnlyDoubleProperty widthProperty()
        The width of this Window. Changing this attribute will narrow or widen the width of the Window. This value includes any and all decorations which may be added by the Operating System such as resizable frame handles. Typical applications will set the Scene width instead. This Window will take its width from the scene if it has never been set by the application. Resizing the window by end user does not count as a setting the width by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

        See Also:
        getWidth(), setWidth(double)
      • setHeight

        public final void setHeight​(double value)
        Sets the value of the property height.
        Property description:
        The height of this Window. Changing this attribute will shrink or heighten the height of the Window. This value includes any and all decorations which may be added by the Operating System such as the title bar. Typical applications will set the Scene height instead. This window will take its height from the scene if it has never been set by the application. Resizing this window by end user does not count as a setting the height by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

      • getHeight

        public final double getHeight()
        Gets the value of the property height.
        Property description:
        The height of this Window. Changing this attribute will shrink or heighten the height of the Window. This value includes any and all decorations which may be added by the Operating System such as the title bar. Typical applications will set the Scene height instead. This window will take its height from the scene if it has never been set by the application. Resizing this window by end user does not count as a setting the height by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

      • heightProperty

        public final ReadOnlyDoubleProperty heightProperty()
        The height of this Window. Changing this attribute will shrink or heighten the height of the Window. This value includes any and all decorations which may be added by the Operating System such as the title bar. Typical applications will set the Scene height instead. This window will take its height from the scene if it has never been set by the application. Resizing this window by end user does not count as a setting the height by the application. If this Window is an instance of Stage, changing this attribute will not visually affect the Window while fullScreen is true, but will be honored by the Window once fullScreen becomes false.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

        See Also:
        getHeight(), setHeight(double)
      • requestFocus

        public final void requestFocus()
        Requests that this Window get the input focus.
      • isFocused

        public final boolean isFocused()
        Gets the value of the property focused.
        Property description:
        Whether or not this Window has the keyboard or input focus.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

      • focusedProperty

        public final ReadOnlyBooleanProperty focusedProperty()
        Whether or not this Window has the keyboard or input focus.

        The property is read only because it can be changed externally by the underlying platform and therefore must not be bindable.

        See Also:
        isFocused()
      • getProperties

        public final ObservableMap<Object,​Object> getProperties()
        Returns an observable map of properties on this node for use primarily by application developers.
        Returns:
        an observable map of properties on this node for use primarily by application developers
        Since:
        JavaFX 8u40
      • hasProperties

        public boolean hasProperties()
        Tests if Window has properties.
        Returns:
        true if node has properties.
        Since:
        JavaFX 8u40
      • setUserData

        public void setUserData​(Object value)
        Convenience method for setting a single Object property that can be retrieved at a later date. This is functionally equivalent to calling the getProperties().put(Object key, Object value) method. This can later be retrieved by calling getUserData().
        Parameters:
        value - The value to be stored - this can later be retrieved by calling getUserData().
        Since:
        JavaFX 8u40
      • getUserData

        public Object getUserData()
        Returns a previously set Object property, or null if no such property has been set using the setUserData(java.lang.Object) method.
        Returns:
        The Object that was previously set, or null if no property has been set or if null was set.
        Since:
        JavaFX 8u40
      • setScene

        protected void setScene​(Scene value)
        Sets the value of the property scene.
        Property description:
        The Scene to be rendered on this Window. There can only be one Scene on the Window at a time, and a Scene can only be on one Window at a time. Setting a Scene on a different Window will cause the old Window to lose the reference before the new one gains it. You may swap Scenes on a Window at any time, even if it is an instance of Stage and with fullScreen set to true. If the width or height of this Window have never been set by the application, setting the scene will cause this Window to take its width or height from that scene. Resizing this window by end user does not count as setting the width or height by the application. An IllegalStateException is thrown if this property is set on a thread other than the JavaFX Application Thread.
        Default value:
        null
      • getScene

        public final Scene getScene()
        Gets the value of the property scene.
        Property description:
        The Scene to be rendered on this Window. There can only be one Scene on the Window at a time, and a Scene can only be on one Window at a time. Setting a Scene on a different Window will cause the old Window to lose the reference before the new one gains it. You may swap Scenes on a Window at any time, even if it is an instance of Stage and with fullScreen set to true. If the width or height of this Window have never been set by the application, setting the scene will cause this Window to take its width or height from that scene. Resizing this window by end user does not count as setting the width or height by the application. An IllegalStateException is thrown if this property is set on a thread other than the JavaFX Application Thread.
        Default value:
        null
      • sceneProperty

        public final ReadOnlyObjectProperty<Scene> sceneProperty()
        The Scene to be rendered on this Window. There can only be one Scene on the Window at a time, and a Scene can only be on one Window at a time. Setting a Scene on a different Window will cause the old Window to lose the reference before the new one gains it. You may swap Scenes on a Window at any time, even if it is an instance of Stage and with fullScreen set to true. If the width or height of this Window have never been set by the application, setting the scene will cause this Window to take its width or height from that scene. Resizing this window by end user does not count as setting the width or height by the application. An IllegalStateException is thrown if this property is set on a thread other than the JavaFX Application Thread.
        Default value:
        null
        See Also:
        getScene(), setScene(Scene)
      • setOpacity

        public final void setOpacity​(double value)
        Sets the value of the property opacity.
        Property description:
        Defines the opacity of the Window as a value between 0.0 and 1.0. The opacity is reflected across the Window, its Decoration and its Scene content. On a JavaFX runtime platform that does not support opacity, assigning a value to this variable will have no visible difference. A Window with 0% opacity is fully translucent. Typically, a Window with 0% opacity will not receive any mouse events.
        Default value:
        1.0
      • getOpacity

        public final double getOpacity()
        Gets the value of the property opacity.
        Property description:
        Defines the opacity of the Window as a value between 0.0 and 1.0. The opacity is reflected across the Window, its Decoration and its Scene content. On a JavaFX runtime platform that does not support opacity, assigning a value to this variable will have no visible difference. A Window with 0% opacity is fully translucent. Typically, a Window with 0% opacity will not receive any mouse events.
        Default value:
        1.0
      • opacityProperty

        public final DoubleProperty opacityProperty()
        Defines the opacity of the Window as a value between 0.0 and 1.0. The opacity is reflected across the Window, its Decoration and its Scene content. On a JavaFX runtime platform that does not support opacity, assigning a value to this variable will have no visible difference. A Window with 0% opacity is fully translucent. Typically, a Window with 0% opacity will not receive any mouse events.
        Default value:
        1.0
        See Also:
        getOpacity(), setOpacity(double)
      • setOnCloseRequest

        public final void setOnCloseRequest​(EventHandler<WindowEvent> value)
        Sets the value of the property onCloseRequest.
        Property description:
        Called when there is an external request to close this Window. The installed event handler can prevent window closing by consuming the received event.
      • getOnCloseRequest

        public final EventHandler<WindowEvent> getOnCloseRequest()
        Gets the value of the property onCloseRequest.
        Property description:
        Called when there is an external request to close this Window. The installed event handler can prevent window closing by consuming the received event.
      • setOnShowing

        public final void setOnShowing​(EventHandler<WindowEvent> value)
        Sets the value of the property onShowing.
        Property description:
        Called just prior to the Window being shown.
      • getOnShowing

        public final EventHandler<WindowEvent> getOnShowing()
        Gets the value of the property onShowing.
        Property description:
        Called just prior to the Window being shown.
      • setOnShown

        public final void setOnShown​(EventHandler<WindowEvent> value)
        Sets the value of the property onShown.
        Property description:
        Called just after the Window is shown.
      • getOnShown

        public final EventHandler<WindowEvent> getOnShown()
        Gets the value of the property onShown.
        Property description:
        Called just after the Window is shown.
      • setOnHiding

        public final void setOnHiding​(EventHandler<WindowEvent> value)
        Sets the value of the property onHiding.
        Property description:
        Called just prior to the Window being hidden.
      • getOnHiding

        public final EventHandler<WindowEvent> getOnHiding()
        Gets the value of the property onHiding.
        Property description:
        Called just prior to the Window being hidden.
      • setOnHidden

        public final void setOnHidden​(EventHandler<WindowEvent> value)
        Sets the value of the property onHidden.
        Property description:
        Called just after the Window has been hidden. When the Window is hidden, this event handler is invoked allowing the developer to clean up resources or perform other tasks when the Window is closed.
      • getOnHidden

        public final EventHandler<WindowEvent> getOnHidden()
        Gets the value of the property onHidden.
        Property description:
        Called just after the Window has been hidden. When the Window is hidden, this event handler is invoked allowing the developer to clean up resources or perform other tasks when the Window is closed.
      • isShowing

        public final boolean isShowing()
        Gets the value of the property showing.
        Property description:
        Whether or not this Window is showing (that is, open on the user's system). The Window might be "showing", yet the user might not be able to see it due to the Window being rendered behind another Window or due to the Window being positioned off the monitor.
        Default value:
        false
      • showingProperty

        public final ReadOnlyBooleanProperty showingProperty()
        Whether or not this Window is showing (that is, open on the user's system). The Window might be "showing", yet the user might not be able to see it due to the Window being rendered behind another Window or due to the Window being positioned off the monitor.
        Default value:
        false
        See Also:
        isShowing()
      • show

        protected void show()
        Attempts to show this Window by setting visibility to true
        Throws:
        IllegalStateException - if this method is called on a thread other than the JavaFX Application Thread.
      • hide

        public void hide()
        Attempts to hide this Window by setting the visibility to false.
        Throws:
        IllegalStateException - if this method is called on a thread other than the JavaFX Application Thread.
      • setEventDispatcher

        public final void setEventDispatcher​(EventDispatcher value)
        Sets the value of the property eventDispatcher.
        Property description:
        Specifies the event dispatcher for this node. The default event dispatcher sends the received events to the registered event handlers and filters. When replacing the value with a new EventDispatcher, the new dispatcher should forward events to the replaced dispatcher to maintain the node's default event handling behavior.
      • getEventDispatcher

        public final EventDispatcher getEventDispatcher()
        Gets the value of the property eventDispatcher.
        Property description:
        Specifies the event dispatcher for this node. The default event dispatcher sends the received events to the registered event handlers and filters. When replacing the value with a new EventDispatcher, the new dispatcher should forward events to the replaced dispatcher to maintain the node's default event handling behavior.
      • eventDispatcherProperty

        public final ObjectProperty<EventDispatcher> eventDispatcherProperty()
        Specifies the event dispatcher for this node. The default event dispatcher sends the received events to the registered event handlers and filters. When replacing the value with a new EventDispatcher, the new dispatcher should forward events to the replaced dispatcher to maintain the node's default event handling behavior.
        See Also:
        getEventDispatcher(), setEventDispatcher(EventDispatcher)
      • addEventHandler

        public final <T extends Event> void addEventHandler​(EventType<T> eventType,
                                                            EventHandler<? super T> eventHandler)
        Registers an event handler to this node. The handler is called when the node receives an Event of the specified type during the bubbling phase of event delivery.
        Type Parameters:
        T - the specific event class of the handler
        Parameters:
        eventType - the type of the events to receive by the handler
        eventHandler - the handler to register
        Throws:
        NullPointerException - if the event type or handler is null
      • removeEventHandler

        public final <T extends Event> void removeEventHandler​(EventType<T> eventType,
                                                               EventHandler<? super T> eventHandler)
        Unregisters a previously registered event handler from this node. One handler might have been registered for different event types, so the caller needs to specify the particular event type from which to unregister the handler.
        Type Parameters:
        T - the specific event class of the handler
        Parameters:
        eventType - the event type from which to unregister
        eventHandler - the handler to unregister
        Throws:
        NullPointerException - if the event type or handler is null
      • addEventFilter

        public final <T extends Event> void addEventFilter​(EventType<T> eventType,
                                                           EventHandler<? super T> eventFilter)
        Registers an event filter to this node. The filter is called when the node receives an Event of the specified type during the capturing phase of event delivery.
        Type Parameters:
        T - the specific event class of the filter
        Parameters:
        eventType - the type of the events to receive by the filter
        eventFilter - the filter to register
        Throws:
        NullPointerException - if the event type or filter is null
      • removeEventFilter

        public final <T extends Event> void removeEventFilter​(EventType<T> eventType,
                                                              EventHandler<? super T> eventFilter)
        Unregisters a previously registered event filter from this node. One filter might have been registered for different event types, so the caller needs to specify the particular event type from which to unregister the filter.
        Type Parameters:
        T - the specific event class of the filter
        Parameters:
        eventType - the event type from which to unregister
        eventFilter - the filter to unregister
        Throws:
        NullPointerException - if the event type or filter is null
      • setEventHandler

        protected final <T extends Event> void setEventHandler​(EventType<T> eventType,
                                                               EventHandler<? super T> eventHandler)
        Sets the handler to use for this event type. There can only be one such handler specified at a time. This handler is guaranteed to be called first. This is used for registering the user-defined onFoo event handlers.
        Type Parameters:
        T - the specific event class of the handler
        Parameters:
        eventType - the event type to associate with the given eventHandler
        eventHandler - the handler to register, or null to unregister
        Throws:
        NullPointerException - if the event type is null
      • fireEvent

        public final void fireEvent​(Event event)
        Fires the specified event.

        This method must be called on the FX user thread.

        Parameters:
        event - the event to fire