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.

  • TornadoFX reemplaza el layoutChildren en la región
  • java.lang.NoSuchMethodException cuando intenta ejecutar la aplicación TornadoFX
  • TornadoFX con TestFX cierra la vista después de cada TestCase
  • tornadofx EventBus expande la fila de la tabla usando el object tableview
  • Cómo ejecutar tornado fx hello world con java 7
  • Cómo inyectar ItemViewModel en tornadoFx
  • No se puede usar fontawesomefx con kotlin y tornadofx
  • Context de reinicio de JavaFX
  • ¿Cuál es la mejor práctica para crear un componente de IU personalizado en tornadofx?
  • No se puede hacer que el nodo se centre en un StackPane con TornadoFX
  • TornadoFx: que realiza mejor FXML o type-CSS