class Window extends EventHandlerDelegate2 with SFXDelegate[javafx.stage.Window] with EventTarget
- Alphabetic
- By Inheritance
- Window
- EventTarget
- SFXDelegate
- EventHandlerDelegate2
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Window(delegate: javafx.stage.Window)
- Attributes
- protected
Type Members
- trait EventHandled extends AnyRef
Trait used for handle events manipulation.
Trait used for handle events manipulation. JavaFX class wrapped must have methods defined in scalafx.event.EventHandlerDelegate2.EventHandled Type:
def addEventHandler [E <: jfxe.Event](eventType: jfxe.EventType[E], eventHandler: jfxe.EventHandler[_ >: E]) def removeEventHandler[E <: jfxe.Event](eventType: jfxe.EventType[E], eventHandler: jfxe.EventHandler[_ >: E]) def addEventFilter [E <: jfxe.Event](eventType: jfxe.EventType[E], eventHandler: jfxe.EventHandler[_ >: E]) def removeEventFilter [E <: jfxe.Event](eventType: jfxe.EventType[E], eventHandler: jfxe.EventHandler[_ >: E]) def buildEventDispatchChain(chain: jfxe.EventDispatchChain): jfxe.EventDispatchChain
- Definition Classes
- EventHandlerDelegate2
- sealed trait FilterMagnet[J <: javafx.event.Event, S <: SFXDelegate[J]] extends AnyRef
Trait implementing Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
Trait implementing Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
- Definition Classes
- EventHandlerDelegate2
- sealed trait HandlerMagnet[J <: javafx.event.Event, S <: SFXDelegate[J]] extends AnyRef
Trait implementing Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
Trait implementing Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
- Definition Classes
- EventHandlerDelegate2
Value Members
- object FilterMagnet
Companion object implementing Magnet Pattern Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
Companion object implementing Magnet Pattern Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
- Definition Classes
- EventHandlerDelegate2
- object HandlerMagnet
Companion object implementing Magnet Pattern Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
Companion object implementing Magnet Pattern Magnet Pattern to avoid compilation error "ambiguous reference to overloaded definition"
- Definition Classes
- EventHandlerDelegate2
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def addEventFilter[E <: Event](eventType: EventType[E], eventHandler: EventHandler[_ >: E]): Unit
Registers an event filter to this task.
Registers an event filter to this task. Registered event filters get an event before any associated event handlers.
- E
Event class
- eventType
the type of the events to receive by the filter
- eventHandler
the filter to register that will filter event
- Definition Classes
- EventHandlerDelegate2
- def addEventHandler[E <: Event](eventType: EventType[E], eventHandler: EventHandler[_ >: E]): Unit
Registers an event handler to this task.
Registers an event handler to this task. Any event filters are first processed, then the specified onFoo event handlers, and finally any event handlers registered by this method. As with other events in the scene graph, if an event is consumed, it will not continue dispatching.
- E
Event class
- eventType
the type of the events to receive by the handler
- eventHandler
the handler to register that will manipulate event
- Definition Classes
- EventHandlerDelegate2
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def buildEventDispatchChain(chain: EventDispatchChain): EventDispatchChain
Construct an event dispatch chain for this target.
Construct an event dispatch chain for this target.
- Definition Classes
- EventHandlerDelegate2
- def centerOnScreen(): Unit
Sets x and y properties on this Window so that it is centered on the screen.
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- val delegate: javafx.stage.Window
JavaFX object to be wrapped.
JavaFX object to be wrapped.
- Definition Classes
- Window → SFXDelegate
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(ref: Any): Boolean
Verifies if a object is equals to this delegate.
Verifies if a object is equals to this delegate.
- ref
Object to be compared.
- returns
if the other object is equals to this delegate or not.
- Definition Classes
- SFXDelegate → AnyRef → Any
- def eventDispatcher: ObjectProperty[EventDispatcher]
Specifies the event dispatcher for this node.
- def eventDispatcher_=(v: EventDispatcher): Unit
- def eventHandlerDelegate: EventHandled
Returns a object that implements scalafx.event.EventHandlerDelegate2.EventHandled.
Returns a object that implements scalafx.event.EventHandlerDelegate2.EventHandled.
- Definition Classes
- Window → EventHandlerDelegate2
- def filterEvent[J <: Event, S <: Event with SFXDelegate[J]](eventType: EventType[J])(filter: FilterMagnet[J, S]): Subscription
Registers an event filter.
Registers an event filter. Registered event filters get an event before any associated event handlers.
Example of filtering mouse events
pane.filterEvent(MouseEvent.Any) { me: MouseEvent => { me.eventType match { case MouseEvent.MousePressed => { ... } case MouseEvent.MouseDragged => { ... } case _ => { ... } } } }
or
pane.filterEvent(MouseEvent.Any) { () => println("Some mouse event handled") }
- J
type JavaFX delegate of the event
- S
ScalaFX type for
J
type wrapper.- eventType
type of events that will be handled.
- filter
code handling the event, see examples above.
- Definition Classes
- EventHandlerDelegate2
- def fireEvent(event: Event): Unit
Whether or not this Window has the keyboard or input focus.
- def focused: ReadOnlyBooleanProperty
Whether or not this Window has the keyboard or input focus.
- def forceIntegerRenderScale: BooleanProperty
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.
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 associatedoutputScale
properties, but the values can be overridden by subsequent calls to thesetRenderScale
setters or through appropriate use of binding. This property will not prevent setting non-integer scales directly using therenderScale
property object or the convenience setter method.Default value is false
- Since
9
- See also
- def forceIntegerRenderScale_=(forced: Boolean): Unit
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def handleEvent[J <: Event, S <: Event with SFXDelegate[J]](eventType: EventType[J])(handler: HandlerMagnet[J, S]): Subscription
Registers an event handler.
Registers an event handler. The handler is called when the node receives an Event of the specified type during the bubbling phase of event delivery.
Example of handling mouse events
pane.handleEvent(MouseEvent.Any) { me: MouseEvent => { me.eventType match { case MouseEvent.MousePressed => ... case MouseEvent.MouseDragged => ... case _ => {} } } }
or
pane.handleEvent(MouseEvent.Any) { () => println("Some mouse event handled") }
- J
type JavaFX delegate of the event
- S
ScalaFX type for
J
type wrapper.- eventType
type of events that will be handled.
- handler
code handling the event, see examples above.
- returns
Returns a subscription that can be used to cancel/remove this event handler
- Definition Classes
- EventHandlerDelegate2
- def hashCode(): Int
- returns
The delegate hashcode
- Definition Classes
- SFXDelegate → AnyRef → Any
- def height: ReadOnlyDoubleProperty
The height of this Stage.
- def height_=(h: Double): Unit
- def hide(): Unit
Attempts to hide this Window by setting the visibility to false.
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def onCloseRequest: ObjectProperty[EventHandler[javafx.stage.WindowEvent]]
Called when there is an external request to close this Window.
- def onCloseRequest_=(v: EventHandler[javafx.stage.WindowEvent]): Unit
- def onHidden: ObjectProperty[EventHandler[javafx.stage.WindowEvent]]
Called just after the Window has been hidden.
- def onHidden_=(v: EventHandler[javafx.stage.WindowEvent]): Unit
- def onHiding: ObjectProperty[EventHandler[javafx.stage.WindowEvent]]
Called just prior to the Window being hidden.
- def onHiding_=(v: EventHandler[javafx.stage.WindowEvent]): Unit
- def onShowing: ObjectProperty[EventHandler[javafx.stage.WindowEvent]]
Called just prior to the Window being shown, even if the menu has no items to show.
- def onShowing_=(v: EventHandler[javafx.stage.WindowEvent]): Unit
- def onShown: ObjectProperty[EventHandler[javafx.stage.WindowEvent]]
Called just after the Window is shown.
- def onShown_=(v: EventHandler[javafx.stage.WindowEvent]): Unit
- def opacity: DoubleProperty
Defines the opacity of the Stage as a value between 0.0 and 1.0.
- def opacity_=(v: Double): Unit
- def outputScaleX: ReadOnlyDoubleProperty
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.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
- def outputScaleX_=(value: Double): Unit
- def outputScaleY: ReadOnlyDoubleProperty
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.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
- def outputScaleY_=(value: Double): Unit
- def removeEventFilter[E <: Event](eventType: EventType[E], eventHandler: EventHandler[_ >: E]): Unit
Unregisters a previously registered event filter from this task.
Unregisters a previously registered event filter from this task. 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.
- E
Event class
- eventType
the event type from which to unregister
- eventHandler
the filter to unregister
- Definition Classes
- EventHandlerDelegate2
- def removeEventHandler[E <: Event](eventType: EventType[E], eventHandler: EventHandler[_ >: E]): Unit
Unregisters a previously registered event handler from this task.
Unregisters a previously registered event handler from this task. 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.
- E
Event class
- eventType
the event type from which to unregister
- eventHandler
the handler to unregister
- Definition Classes
- EventHandlerDelegate2
- def renderScaleX: DoubleProperty
The horizontal scale that the
Window
will use when rendering itsScene
to the rendering buffer.The horizontal scale that the
Window
will use when rendering itsScene
to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleX property and can be overridden either by callingsetRenderScaleX()
in response to a listener on theoutputScaleX
property or by binding it appropriately.Default value is outputScaleX
- Since
9
- See also
- def renderScaleX_=(scale: Double): Unit
- def renderScaleY: DoubleProperty
The vertical scale that the
Window
will use when rendering itsScene
to the rendering buffer.The vertical scale that the
Window
will use when rendering itsScene
to the rendering buffer. This property is automatically updated whenever there is a change in the outputScaleY property and can be overridden either by callingsetRenderScaleY()
in response to a listener on theoutputScaleY
property or by binding it appropriately.DefaultValue is outputScaleY
- Since
9
- See also
- def renderScaleY_=(scale: Double): Unit
- def requestFocus(): Unit
Requests that this Window get the input focus.
- def scene: ReadOnlyObjectProperty[Scene]
The Scene to be rendered on this Stage.
- def showing: ReadOnlyBooleanProperty
Whether or not this Stage is showing (that is, open on the user's system).
- def sizeToScene(): Unit
Set the width and height of this Window to match the size of the content of this Window's Scene.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- returns
Returns the original delegate's
toString()
adding a[SFX]
prefix.
- Definition Classes
- SFXDelegate → AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def width: ReadOnlyDoubleProperty
The width of this Stage.
- def width_=(w: Double): Unit
- def x: ReadOnlyDoubleProperty
The horizontal location of this Stage on the screen.
- def x_=(value: Double): Unit
- def y: ReadOnlyDoubleProperty
The vertical location of this Stage on the screen.
- def y_=(value: Double): Unit
ScalaFX is a UI DSL written within the Scala Language that sits on top of JavaFX 2.x and and JavaFX 8. This means that every ScalaFX application is also a valid Scala application. By extension it supports full interoperability with Java and can run anywhere the Java Virtual Machine (JVM) and JavaFX 2.0 or JavaFX 8 are supported.
Package Structure
ScalaFX package structure corresponds to JavaFX package structure, for instance
scalafx.animation
corresponds tojavafx.animation
.Example Usage
A basic ScalaFX application is created creating an object that is an instance of
JFXApp3
. Following Java FX theatre metaphor, it contains astage
that contains ascene
. Astage
roughly corresponds to a window in a typical UI environment. Thescene
holds UI content presented to the user. In the example below, the content is a pane with a singlelabel
component.