Desplazamiento suave en JavaFX TableView

Estoy escribiendo una pequeña aplicación de chat en Kotlin con TornadoFX que funciona hasta ahora.
Actualmente estoy tratando de hacerlo más atractivo visualmente cuando recibo posts nuevos.
Los posts están en un TableView (remitente – post) pero desplazarse a los nuevos posts no es tan sencillo como me gustaría.

El fragment donde necesito ayuda es relativamente corto:

 addEventHandler(ScrollToEvent.ANY) { it.consume() timeline { val keyValue = KeyValue(/* property to change */, /* target value */, Interpolator.EASE_OUT) keyframe(0.25.seconds) { this.plusAssign(keyValue) } } } 

En general, necesito ayuda para saber qué propiedad cambiar y cuál debería ser el objective en esta línea:

 KeyValue(/* property to change */, /* target value */, Interpolator.EASE_OUT) 

Ok, encontré la solución. Uno necesita search el ScrollBar proporciona TableView , una vez que hay suficientes filas (y cuando el desplazamiento realmente hace algo).

Desde TornadoFX JavaFX Sync Desplácese por las vistas de tabla , adapté la búsqueda y obtuve este código de trabajo:

 addEventHandler(ScrollToEvent.ANY) { it.consume() timeline { val scrollBar = lookupAll(".scroll-bar").first() as ScrollBar val keyValue = KeyValue(scrollBar.valueProperty(), scrollBar.max, Interpolator.EASE_OUT) keyframe(0.5.seconds) { this.plusAssign(keyValue) } } } 
  • La compilation de Gradle no puede encontrar tornadofx en Linux
  • TornadoFX filechooser
  • Forma de configurar las properties de PrimaryStage o Scene en TornadoFX
  • Dibujando líneas desde ViewModel TornadoFX
  • TornadoFX ¿Cómo crear MDI con una list de models de windows hijas?
  • TornadoFX: permite copyr un elemento de una vista de list al portapapeles
  • Tornadofx tableview sincroniza dos tablas
  • No se puede hacer que el nodo se centre en un StackPane con TornadoFX
  • Animación consecutiva en TornadoFX?
  • Enlazando una vista a una propiedad de controller cambiante
  • Columnas de tabla dinámica