class TableColumn[S, T] extends TableColumnBase[S, T] with SFXDelegate[javafx.scene.control.TableColumn[S, T]]
- Alphabetic
- By Inheritance
- TableColumn
- TableColumnBase
- Styleable
- SFXDelegate
- EventHandlerDelegate1
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
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.TableColumn[S, T], javafx.scene.control.TableCell[S, T]]]
The cell factory for all cells in this column.
- def cellFactory_=(op: (TableCell[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.TableColumn[S, T], javafx.scene.control.TableCell[S, T]]): Unit
- 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 TableColumn.
The cell value factory needs to be set to specify how to populate all cells within a single TableColumn.
class Position(name_ : String, value_ : Int) { val name = new StringProperty(this, "name", name_) val value = new ObjectProperty[Int](this, "value", value_) } val tableView = new TableView[Position](data) { columns ++= List( new TableColumn[Position, String] { text = "Position" cellValueFactory = {_.value.name} prefWidth = 180 }, new TableColumn[Position, Int] { text = "Value" cellValueFactory = {_.value.value} prefWidth = 180 } ) }
- 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() @HotSpotIntrinsicCandidate()
- def columns: ObservableBuffer[javafx.scene.control.TableColumn[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.
- Definition Classes
- TableColumn → 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.
- Definition Classes
- Styleable
- val delegate: javafx.scene.control.TableColumn[S, T]
JavaFX object to be wrapped.
JavaFX object to be wrapped.
- Definition Classes
- TableColumn → 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: 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() @HotSpotIntrinsicCandidate()
- 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() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- 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[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 tableView: ReadOnlyObjectProperty[javafx.scene.control.TableView[S]]
The TableView that this TableColumn belongs to.
- 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 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: (TableColumn[S, T]) => TableCell[S, T]): Unit
- Annotations
- @deprecated
- Deprecated
(Since version 16.0.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_=(op: (TableCell[S, T], T) => Unit)
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.