class TreeTableColumn[S, T] extends TableColumnBase[javafx.scene.control.TreeItem[S], T] with SFXDelegate[javafx.scene.control.TreeTableColumn[S, T]]
A TreeTableView
is made up of a number of TreeTableColumn
instances.
Each TreeTableColumn
in a TreeTableView
is responsible for displaying (and editing) the contents of that column.
Wraps a JavaFX TreeTableColumn
- S
The type of the TreeTableView generic type (i.e. S == TreeTableView<S>)
- T
The type of the content in all cells in this TreeTableColumn.
- Source
- TreeTableColumn.scala
- Since
8.0
- Alphabetic
- By Inheritance
- TreeTableColumn
- TableColumnBase
- Styleable
- SFXDelegate
- EventHandlerDelegate1
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new TreeTableColumn(text: String)
Creates a TreeTableColumn with the text set to the provided string, with default cell factory, comparator, and onEditCommit implementation.
Creates a TreeTableColumn with the text set to the provided string, with default cell factory, comparator, and onEditCommit implementation.
- text
The string to show when the TreeTableColumn is placed within the TreeTableView.
- new TreeTableColumn(delegate: javafx.scene.control.TreeTableColumn[S, T] = new jfxsc.TreeTableColumn[S, T]())
Creates a new
TreeTableColumn
from a JavaFX one.Creates a new
TreeTableColumn
from a JavaFX one.- delegate
A JavaFX TreeTableColumn to be wrapped. Its default value is a new JavaFX TreeTableColumn.
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.EventHandlerDelegate1.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
- EventHandlerDelegate1
- 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
- EventHandlerDelegate1
- 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
- EventHandlerDelegate1
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
- EventHandlerDelegate1
- 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
- EventHandlerDelegate1
- 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
- EventHandlerDelegate1
- 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
- EventHandlerDelegate1
- 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
- EventHandlerDelegate1
- def cellFactory: ObjectProperty[Callback[javafx.scene.control.TreeTableColumn[S, T], javafx.scene.control.TreeTableCell[S, T]]]
The cell factory for all cells in this column.
The cell factory for all cells in this column. The cell factory is responsible for rendering the data contained within each TreeTableCell for a single TreeTableColumn.
By default TreeTableColumn uses a default cell factory, but this can be replaced with a custom implementation, for example to show data in a different way or to support editing. There is a lot of documentation on creating custom cell factories elsewhere (see Cell and TreeTableView for example).
Finally, there are a number of pre-built cell factories available in the javafx.scene.control.cell package.
- def cellFactory_=(op: (TreeTableCell[S, T], T) => Unit): Unit
This is a helper method for easy creation of custom cell factories.
This is a helper method for easy creation of custom cell factories. The custom cell is automatically created, and it handles rendering of empty cells. The user is only responsible for providing an operation
op
that renders non-empty cells.The operation
op
provides as input the already created customcell
andvalue
of that cell. Thevalue
is provided by thecellValueFactory
. Thevalue
is guaranteed to be nonnull
. Thenull
values are automatically rendered as empty cells by the providedcell
object.Here is an example where value's type is a case class
Person
that contains two text fields:firstName
andlastName
.case class Person(firstName:String, lastName:String) ... cellFactory = (cell, value) => { cell.text = value.firstName + " " + value.lastName }
Another example where 'value' is of type 'Color' and the cell factory creates a circle representing that color:
cellFactory = (cell, value) => { cell.graphic = new Circle { fill = value radius = 8 } }
- op
a method that will create content for a given
cell
. It gets as an input automatically created customcell
and a non-nullvalue
of that cell.op
is called in the cell'supdateItem
method.
- def cellFactory_=(callback: Callback[javafx.scene.control.TreeTableColumn[S, T], javafx.scene.control.TreeTableCell[S, T]]): Unit
- def cellObservableValue(item: TreeItem[S]): ObservableValue[T, T]
Attempts to return an ObservableValue<T> for the given item (which is of type S).
Attempts to return an ObservableValue<T> for the given item (which is of type S). In other words, this method expects to receive an object from the underlying data model for the entire 'row' in the table, and it must return an ObservableValue<T> for the value in this specific column.
This is achieved by calling the cell value factory, and returning whatever it returns when passed a CellDataFeatures (see, for example, the CellDataFeatures classes belonging to TableColumn and TreeTableColumn for more information).
- item
The item (of type S) for which an ObservableValue<T> is sought.
- returns
An ObservableValue<T> for this specific table column.
- def cellObservableValue(index: Int): ObservableValue[T, T]
Attempts to return an ObservableValue<T> for the item in the given index (which is of type S).
Attempts to return an ObservableValue<T> for the item in the given index (which is of type S). In other words, this method expects to receive an integer value that is greater than or equal to zero, and less than the size of the underlying data model. If the index is valid, this method will return an ObservableValue<T> for this specific column.
This is achieved by calling the cell value factory, and returning whatever it returns when passed a CellDataFeatures (see, for example, the CellDataFeatures classes belonging to TableColumn and TreeTableColumn for more information).
- index
The index of the item (of type S) for which an ObservableValue<T> is sought.
- returns
An ObservableValue<T> for this specific table column.
- def cellValueFactory: ObjectProperty[(CellDataFeatures[S, T]) => ObservableValue[T, T]]
The cell value factory needs to be set to specify how to populate all cells within a single TreeTableColumn.
The cell value factory needs to be set to specify how to populate all cells within a single TreeTableColumn. A cell value factory is a Callback that provides a TreeTableColumn.CellDataFeatures instance, and expects an ObservableValue to be returned. The returned ObservableValue instance will be observed internally to allow for updates to the value to be immediately reflected on screen.
An example of how to set a cell value factory is:
// p.value returns the TreeItem[Person] instance for a particular TreeTableView row, // p.value.value returns the Person instance inside the TreeItem[Person] cellValueFactory = { p => p.value.value.firstName }
A simple complete example (from
scalafx-demos
SimpleTreeTableView
):import scalafx.application.JFXApp3 import scalafx.application.JFXApp3.PrimaryStage import scalafx.controls.tableview.Person import scalafx.scene.Scene import scalafx.scene.control.TreeTableColumn._ import scalafx.scene.control.{TreeItem, TreeTableColumn, TreeTableView} object SimpleTreeTableView extends JFXApp3 { override def start(): Unit = { val treeRoot = new TreeItem[Person](new Person("Peggy", "Sue", "555-6798")) treeRoot.children += new TreeItem[Person](new Person("Rocky", "Raccoon", "555-6798")) stage = new PrimaryStage { title = "Simple Table View" scene = new Scene { content = new TreeTableView[Person](treeRoot) { columns ++= Seq( new TreeTableColumn[Person, String] { text = "First Name" cellValueFactory = _.value.getValue.firstName prefWidth = 180 }, new TreeTableColumn[Person, String]() { text = "Last Name" cellValueFactory = _.value.getValue.lastName prefWidth = 180 } ) } } } } }
A common approach is to want to populate cells in a TreeTableColumn using a single value from a Java bean. To support this common scenario, there is the TreeItemPropertyValueFactory class. Refer to this class for more information on how to use it, but briefly here is how the above use case could be simplified using the TreeItemPropertyValueFactory class:
firstNameCol.cellValueFactory = new TreeItemPropertyValueFactory[Person,String]("firstName"))
- def cellValueFactory_=(f: (CellDataFeatures[S, T]) => ObservableValue[T, T]): Unit
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def columns: ObservableBuffer[javafx.scene.control.TreeTableColumn[S, _]]
This enables support for nested columns, which can be useful to group together related data.
This enables support for nested columns, which can be useful to group together related data. For example, we may have a 'Name' column with two nested columns for 'First' and 'Last' names.
This has no impact on the table as such - all column indices point to the leaf columns only, and it isn't possible to sort using the parent column, just the leaf columns. In other words, this is purely a visual feature.
- returns
An ObservableBuffer containing TableColumnBase instances (or subclasses) that are the children of this TableColumnBase. If these children TableColumnBase instances are set as visible, they will appear beneath this table column.
- Definition Classes
- TreeTableColumn → TableColumnBase
- def comparator: ObjectProperty[Comparator[T]]
Comparator function used when sorting this TableColumnBase.
Comparator function used when sorting this TableColumnBase.
- Definition Classes
- TableColumnBase
- def comparator_=(v: Ordering[T]): Unit
- Definition Classes
- TableColumnBase
- def contextMenu: ObjectProperty[javafx.scene.control.ContextMenu]
This menu will be shown whenever the user right clicks within the header area of this TableColumnBase.
This menu will be shown whenever the user right clicks within the header area of this TableColumnBase.
- Definition Classes
- TableColumnBase
- def contextMenu_=(v: ContextMenu): Unit
- Definition Classes
- TableColumnBase
- def cssMetaData: Seq[CssMetaData[_ <: Styleable, _]]
The CssMetaData of this Styleable.
The CssMetaData of this Styleable. This may be returned as an unmodifiable list.
- Definition Classes
- TreeTableColumn → Styleable
- val delegate: javafx.scene.control.TreeTableColumn[S, T]
JavaFX object to be wrapped.
JavaFX object to be wrapped.
- Definition Classes
- TreeTableColumn → TableColumnBase → SFXDelegate
- def editable: BooleanProperty
Specifies whether this TableColumnBase allows editing.
Specifies whether this TableColumnBase allows editing.
- Definition Classes
- TableColumnBase
- def editable_=(v: Boolean): Unit
- Definition Classes
- TableColumnBase
- 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 eventHandlerDelegate: EventHandled
Returns a object that implements scalafx.event.EventHandlerDelegate1.EventHandled.
Returns a object that implements scalafx.event.EventHandlerDelegate1.EventHandled.
- Definition Classes
- TableColumnBase → EventHandlerDelegate1
- 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
- EventHandlerDelegate1
- def getCellData(index: javafx.scene.control.TreeItem[S]): T
Returns the actual value for a cell from the given item.
Returns the actual value for a cell from the given item.
- Definition Classes
- TableColumnBase
- def getCellData(index: Int): T
Returns the actual value for a cell at a given row index (and which belongs to this TableColumnBase).
Returns the actual value for a cell at a given row index (and which belongs to this TableColumnBase).
- Definition Classes
- TableColumnBase
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def getId: String
The id of this Styleable.
The id of this Styleable.
IMPLEMENTATION NOTE: For this method was adopted the name
getId
insteadid
to not conflict with its subclasses already have a method with this name which returns aStringProperty
.- Definition Classes
- Styleable
- def getStyle: String
A string representation of the CSS style associated with this specific Node.
A string representation of the CSS style associated with this specific Node.
IMPLEMENTATION NOTE: For this method was adopted the name
getStyle
insteadstyle
to not conflict with its subclasses already have a method with this name which returns aStringProperty
.- Definition Classes
- Styleable
- def graphic: ObjectProperty[javafx.scene.Node]
The graphic in the TableColumnBase.
The graphic in the TableColumnBase.
- Definition Classes
- TableColumnBase
- def graphic_=(v: Node): Unit
- Definition Classes
- TableColumnBase
- 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
- EventHandlerDelegate1
- def hasProperties: Boolean
Tests if this TableColumnBase has properties.
Tests if this TableColumnBase has properties.
- Definition Classes
- TableColumnBase
- def hashCode(): Int
- returns
The delegate hashcode
- Definition Classes
- SFXDelegate → AnyRef → Any
- def id: StringProperty
The id of this TableColumnBase.
The id of this TableColumnBase.
- Definition Classes
- TableColumnBase
- def id_=(v: String): Unit
- Definition Classes
- TableColumnBase
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def maxWidth: DoubleProperty
The maximum width the TableColumnBase is permitted to be resized to.
The maximum width the TableColumnBase is permitted to be resized to.
- Definition Classes
- TableColumnBase
- def maxWidth_=(v: Double): Unit
- Definition Classes
- TableColumnBase
- def minWidth: DoubleProperty
The minimum width the TableColumnBase is permitted to be resized to.
The minimum width the TableColumnBase is permitted to be resized to.
- Definition Classes
- TableColumnBase
- def minWidth_=(v: Double): Unit
- Definition Classes
- TableColumnBase
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def onEditCancel: ObjectProperty[EventHandler[CellEditEvent[S, T]]]
This event handler will be fired when the user cancels editing a cell.
- def onEditCancel_=(v: EventHandler[CellEditEvent[S, T]]): Unit
- def onEditCommit: ObjectProperty[EventHandler[CellEditEvent[S, T]]]
This event handler will be fired when the user successfully commits their editing.
- def onEditCommit_=(v: EventHandler[CellEditEvent[S, T]]): Unit
- def onEditStart: ObjectProperty[EventHandler[CellEditEvent[S, T]]]
This event handler will be fired when the user successfully initiates editing.
- def onEditStart_=(v: EventHandler[CellEditEvent[S, T]]): Unit
- def parentColumn: ReadOnlyObjectProperty[javafx.scene.control.TableColumnBase[javafx.scene.control.TreeItem[S], _]]
This read-only property will always refer to the parent of this column, in the situation where nested columns are being used.
This read-only property will always refer to the parent of this column, in the situation where nested columns are being used.
- Definition Classes
- TableColumnBase
- def prefWidth: DoubleProperty
The preferred width of the TableColumnBase.
The preferred width of the TableColumnBase.
- Definition Classes
- TableColumnBase
- def prefWidth_=(v: Double): Unit
- Definition Classes
- TableColumnBase
- def pseudoClassStates: ObservableSet[PseudoClass]
The pseudo-class state of this Styleable.
The pseudo-class state of this Styleable.
- Definition Classes
- Styleable
- 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
- EventHandlerDelegate1
- 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
- EventHandlerDelegate1
- def resizable: BooleanProperty
Used to indicate whether the width of this column can change.
Used to indicate whether the width of this column can change.
- Definition Classes
- TableColumnBase
- def resizable_=(v: Boolean): Unit
- Definition Classes
- TableColumnBase
- def sortNode: ObjectProperty[javafx.scene.Node]
The sort node is commonly seen represented as a triangle that rotates on screen to indicate whether the TableColumnBase is part of the sort order, and if so, what position in the sort order it is in.
The sort node is commonly seen represented as a triangle that rotates on screen to indicate whether the TableColumnBase is part of the sort order, and if so, what position in the sort order it is in.
- Definition Classes
- TableColumnBase
- def sortNode_=(v: Node): Unit
- Definition Classes
- TableColumnBase
- def sortType: ObjectProperty[SortType]
Used to state whether this column, if it is part of the TableView.sortOrder ObservableList, should be sorted in ascending or descending order.
- def sortType_=(v: SortType): Unit
- def sortable: BooleanProperty
A boolean property to toggle on and off the sortability of this column.
A boolean property to toggle on and off the sortability of this column.
- Definition Classes
- TableColumnBase
- def sortable_=(v: Boolean): Unit
- Definition Classes
- TableColumnBase
- def style: StringProperty
The CSS style string associated to this TableColumnBase.
The CSS style string associated to this TableColumnBase.
- Definition Classes
- TableColumnBase
- def styleClass: ObservableBuffer[String]
A list of String identifiers which can be used to logically group Nodes, specifically for an external style engine.
A list of String identifiers which can be used to logically group Nodes, specifically for an external style engine.
- Definition Classes
- Styleable
- def style_=(v: String): Unit
- Definition Classes
- TableColumnBase
- def styleableNode: Node
Returns the Node that represents this Styleable object.
Returns the Node that represents this Styleable object. This method should be overridden in cases where the Styleable is not itself a Node, so that it may optionally return the relevant root node representation of itself. By default this method returns null, which can mean that either the Styleable itself is a Node, or if that is not the case, that the Styleable does not have a node representation available at the time of request.
- returns
the Node that represents this Styleable object
- Definition Classes
- Styleable
- Since
9
- def styleableParent: Styleable
The parent of this Styleable, or null if there is no parent.
The parent of this Styleable, or null if there is no parent.
- Definition Classes
- Styleable
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def text: StringProperty
This is the text to show in the header for this column.
This is the text to show in the header for this column.
- Definition Classes
- TableColumnBase
- def text_=(v: String): Unit
- Definition Classes
- TableColumnBase
- def toString(): String
- returns
Returns the original delegate's
toString()
adding a[SFX]
prefix.
- Definition Classes
- SFXDelegate → AnyRef → Any
- def treeTableView: ReadOnlyObjectProperty[javafx.scene.control.TreeTableView[S]]
The TreeTableView that this TreeTableColumn belongs to.
- def typeSelector: String
The type of this
Styleable
that is to be used in selector matching.The type of this
Styleable
that is to be used in selector matching.- Definition Classes
- Styleable
- def userData: AnyRef
Returns a previously set Object property, or null if no such property has been set using the setUserData(Any) method.
Returns a previously set Object property, or null if no such property has been set using the setUserData(Any) method.
- Definition Classes
- TableColumnBase
- def visible: BooleanProperty
Toggling this will immediately toggle the visibility of this column, and all children columns.
Toggling this will immediately toggle the visibility of this column, and all children columns.
- Definition Classes
- TableColumnBase
- def visible_=(v: Boolean): Unit
- Definition Classes
- TableColumnBase
- 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 column.
The width of this column.
- Definition Classes
- TableColumnBase
Deprecated Value Members
- def cellFactory_=(f: (TreeTableColumn[S, T]) => TreeTableCell[S, T]): Unit
- Annotations
- @deprecated
- Deprecated
(Since version 16.0.*-R25) This method does not allow for correct handling of empty cells leading to possible rendering artifacts. See explanation in ScalaFX Issue #256. Use the new
cellFactory
assignment method:cellFactory = (cell, value) => {...}
that automatically handles empty cells.
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
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.