TornadoFX: Type-Safe CSS con otras bibliotecas

Soy nuevo en Kolin y TornadoFX y actualmente estoy experimentando con algunas de sus características. Me gustaría usar JFoenix-Library y diseñar sus controles con la característica CSS segura de types de TornadoFX. Pero no sé cómo modificar los styles dada la class CSS de un control JFoenix.

Por ejemplo, JFXDecorator tiene la class CSS pnetworkingeterminada jfx-decorator . Para cambiar el color de background de la barra de título, tengo que modificar la class jfx-decorator-buttons-container . ¿Cómo puedo hacer esto con TornadoFX? En un file .css, simplemente usaría

 .jfx-decorator-buttons-container { -fx-background-color: networking; } 

¿Es esto posible con TornadoFX?

Usted menciona las classs jfx-decorator y jfx-decorator-buttons-container , pero su CSS de ejemplo usa las classs jfx-decorator-buttons y container . No estoy seguro de qué classs realmente quieres, pero agregaré las dos últimas, ya que eso producirá el CSS de tu ejemplo.

 class Styles : Stylesheet() { companion object { val jfxDecoratorButtons by cssclass() val container by cssclass() } init { jfxDecoratorButtons and container { backgroundColor += Color.RED } } } 

ACTUALIZACIÓN: Cambió el código en su pregunta, así que aquí está la versión actualizada que producirá ese resultado:

 class Styles : Stylesheet() { companion object { val jfxDecoratorButtonsContainer by cssclass() } init { jfxDecoratorButtonsContainer { backgroundColor += Color.RED } } } 

Los selectores encapsulados Camel se convierten automáticamente a guiones inferiores con guiones. También puede especificar el nombre exacto dentro de la function de delegado cssclass :

val myCssClass by cssclass("my-slightly-different-css-class")

Observe también que dado que la propiedad backgroundColor acepta valores múltiples, debe "agregar" el color a la list de colors usando += . Este es el patrón común para todas las properties que aceptan valores múltiples.

  • La compilation de Gradle no puede encontrar tornadofx en Linux
  • Tornadofx - controlando el object de la fila de la vista de tabla mientras construye
  • ¿Cómo puedo crear un encabezado de columna nested / dividido usando TornadoFx?
  • Crea una vista arbitraria
  • En TornadoFX, ¿cómo puedo vincular las properties de BigDecimal a otra propiedad de BigDecimal usando objectBinding?
  • Forma de configurar las properties de PrimaryStage o Scene en TornadoFX
  • preguntas sobre DI, ViewModel, etc.
  • Cómo ejecutar tornado fx hello world con java 7
  • tornadofx EventBus expande la fila de la tabla usando el object tableview
  • TornadoFX: el text de la label no se actualiza
  • TornadoFx: que realiza mejor FXML o type-CSS