object Platform
Application platform support, wrapper for javafx.application.Platform.
- Source
- Platform.scala
- Alphabetic
- By Inheritance
- Platform
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
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
accessibilityActive: ReadOnlyBooleanProperty
Indicates whether or not accessibility is active.
Indicates whether or not accessibility is active. This property is typically set to true the first time an assistive technology, such as a screen reader, requests information about any JavaFX window or its children.
This method may be called from any thread.
- returns
the read-only boolean property indicating if accessibility is active
- Since
JavaFX 8u40
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
enterNestedEventLoop(key: Any): Any
Enter a nested event loop and block until the corresponding exitNestedEventLoop call is made.
Enter a nested event loop and block until the corresponding exitNestedEventLoop call is made. The key passed into this method is used to uniquely identify the matched enter/exit pair. This method creates a new nested event loop and blocks until the corresponding exitNestedEventLoop method is called with the same key. The return value of this method will be the
rvalobject supplied to the exitNestedEventLoop method call that unblocks it.This method must either be called from an input event handler or from the run method of a Runnable passed to javafx.application.Platform.runLater. It must not be called during animation or layout processing.
- key
the Object that identifies the nested event loop, which must not be null
- returns
the value passed into the corresponding call to exitEventLoop
- Since
9
- Exceptions thrown
IllegalArgumentExceptionif the specified key is associated with a nested event loop that has not yet returnedIllegalStateExceptionif this method is called on a thread other than the JavaFX Application Thread.NullPointerExceptionif the key is null
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
exit(): Unit
Causes the JavaFX application to terminate.
-
def
exitNestedEventLoop(key: Any, rval: Any): Unit
Exit a nested event loop and unblock the caller of the corresponding enterNestedEventLoop.
Exit a nested event loop and unblock the caller of the corresponding enterNestedEventLoop. The key passed into this method is used to uniquely identify the matched enter/exit pair. This method causes the nested event loop that was previously created with the key to exit and return control to the caller. If the specified nested event loop is not the inner-most loop then it will not return until all other inner loops also exit.
- key
the Object that identifies the nested event loop, which must not be null
- rval
an Object that is returned to the caller of the corresponding enterNestedEventLoop. This may be null.
- Since
9
- Exceptions thrown
IllegalArgumentExceptionif the specified key is not associated with an active nested event loopIllegalStateExceptionif this method is called on a thread other than the FX Application threadNullPointerExceptionif the key is null
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
implicitExit: Boolean
Gets the value of the implicitExit attribute.
-
def
implicitExit_=(implicitExit: Boolean): Unit
Sets the implicitExit attribute to the specified value.
- def isAccessibilityActive: Boolean
-
def
isFxApplicationThread: Boolean
Returns true if the calling thread is the JavaFX Application Thread.
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isKeyLocked(keyCode: KeyCode): Option[Boolean]
Returns a flag indicating whether the key corresponding to
keyCodeis in the locked (or "on") state.Returns a flag indicating whether the key corresponding to
keyCodeis in the locked (or "on") state.keyCodemust be one of: KeyCode.CAPS or KeyCode.NUM_LOCK. If the underlying system is not able to determine the state of the specifiedkeyCode,Noneis returned. If the keyboard attached to the system doesn't have the specified key, anSome[False]is returned. This method must be called on the JavaFX Application thread.- keyCode
the
keyCodeof the lock state to query- returns
the lock state of the key corresponding to
keyCode, or None if the system cannot determine its state
- Since
17
- Exceptions thrown
IllegalArgumentExceptionifkeyCodeis not one of the validkeyCodevaluesIllegalStateExceptionif this method is called on a thread other than the JavaFX Application Thread
-
def
isNestedLoopRunning: Boolean
Checks whether a nested event loop is running, returning true to indicate that one is, and false if there are no nested event loops currently running.
Checks whether a nested event loop is running, returning true to indicate that one is, and false if there are no nested event loops currently running. This method must be called on the JavaFX Application thread.
- returns
true if there is a nested event loop running, and false otherwise.
- Since
9
- Exceptions thrown
IllegalStateExceptionif this method is called on a thread other than the JavaFX Application Thread.
-
def
isSupported(feature: ConditionalFeature): Boolean
Queries whether a specific conditional feature is supported by the platform.
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
requestNextPulse(): Unit
Requests the Java Runtime to perform a pulse.
Requests the Java Runtime to perform a pulse. This will run a pulse even if there are no animation timers, scene graph modifications, or window events that would otherwise cause the pulse to run. If no pulse is in progress, then one will be scheduled to run the next time the pulse timer fires. If there is already a pulse running, then at least one more pulse after the current pulse will be scheduled. This method may be called on any thread.
- Since
9
-
def
runLater[R](op: ⇒ R): Unit
Run the specified code block on the JavaFX Application Thread at some unspecified time in the future.
Run the specified code block on the JavaFX Application Thread at some unspecified time in the future. Returns immediately.
Example use:
Platform.runLater { println("Running on application thread.") } -
def
runLater(runnable: Runnable): Unit
Run the specified Runnable on the JavaFX Application Thread at some unspecified time in the future.
Run the specified Runnable on the JavaFX Application Thread at some unspecified time in the future. Returns immediately.
-
def
startup(runnable: Runnable): Unit
This method starts the JavaFX runtime.
This method starts the JavaFX runtime. The specified Runnable will then be called on the JavaFX Application Thread. In general it is not necessary to explicitly call this method, since it is invoked as a consequence of how most JavaFX applications are built. However there are valid use cases for calling this method directly. Because this method starts the JavaFX runtime, there is not yet any JavaFX Application Thread, so it is normal that this method is called directly on the main thread of the application.
This method may or may not return to the caller before the run method of the specified Runnable has been called. In any case, once this method returns, you may call runLater(Runnable) with additional Runnables. Those Runnables will be called, also on the JavaFX Application Thread, after the Runnable passed into this method has been called.
As noted, it is normally the case that the JavaFX Application Thread is started automatically. It is important that this method only be called when the JavaFX runtime has not yet been initialized. Situations where the JavaFX runtime is started automatically include:
- For standard JavaFX applications that extend Application, and
use either the Java launcher or one of the launch methods in the
Application class to launch the application, the FX runtime is
initialized automatically by the launcher before the
Applicationclass is loaded. - For Swing applications that use javafx.embed.swing.JFXPanel
to display FX content, the
FX runtime is initialized when the first
JFXPanelinstance is constructed. - For SWT application that use
FXCanvasto display FX content, the FX runtime is initialized when the firstFXCanvasinstance is constructed.
When an application does not follow any of these common approaches, then it becomes the responsibility of the developer to manually start the JavaFX runtime by calling this startup method.
Calling this method when the JavaFX runtime is already running will result in an IllegalStateException being thrown - it is only valid to request that the JavaFX runtime be started once.
- runnable
the Runnable whose run method will be executed on the JavaFX Application Thread once it has been started
- Since
9
- Exceptions thrown
IllegalStateExceptionif the JavaFX runtime is already running- See also
Application
- For standard JavaFX applications that extend Application, and
use either the Java launcher or one of the launch methods in the
Application class to launch the application, the FX runtime is
initialized automatically by the launcher before the
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
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.animationcorresponds 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 astagethat contains ascene. Astageroughly corresponds to a window in a typical UI environment. Thesceneholds UI content presented to the user. In the example below, the content is a pane with a singlelabelcomponent.