TornadoFX: el text de la label no se actualiza

Uno de los problemas que estoy experimentando actualmente es que parece que no puedo cambiar el text de una label que se implementa en un AnchorPane cargado dinámicamente. Supongo que esto podría estar relacionado con el controller y cómo funciona JavaFX / TornadoFX, pero parece que no puedo encontrar lo que estoy haciendo mal.

El problema en sí ocurre en esta class , y ocurre en el método showSystemDetails() . Lo que esperaría que sucediera es que al presionar el button "Detalles del sistema" en la barra lateral, las tags se actualizarían al valor requerido, pero esto no está sucediendo por algún motivo.

Por favor, siéntase libre de señalarme lo que estoy haciendo mal, o proporcionar cualquier crítica constructiva. El proyecto todavía está en pleno desarrollo, por lo que muchas cosas siguen siendo desorderadas / rotas.

La razón por la que esto no funciona es que está cargando manualmente una nueva versión del file FMXL cada vez que selecciona algo en su menu. El file FXML cargado originalmente por SystemDetailsViewProxy se actualiza correctamente, pero ya no se muestra en la pantalla.

Para ver la Vista actualizada, asegúrese de volver a colocar el nodo raíz de la instancia de SystemDetailsViewProxy .

Por ejemplo, podría cambiar su DrawerMenuButton enum para que contenga references a SystemDetailsViewProxy :: class en lugar de esas dos cadenas, y use add(viewClass) para agregar el nodo raíz correcto a su vista onclick en los botones de menu.

Además, debería usar ViewModels y binding en lugar de actualizar manualmente la propiedad de text de las tags. Está haciendo muchísimo trabajo manual / propenso a errores con el que el marco puede ayudarle de forma gratuita.

Su aplicación no está utilizando las mejores prácticas en varias áreas importantes, y está rodando sus propias soluciones para las cosas que el marco ya hace muy bien 🙂

Las vistas son únicas cuando las gestiona el marco, pero las crea usted mismo en lugar de usar inject / find. El resultado es que no se están llamando a los methods importantes del ciclo de vida.

También sugeriría search types de constructores seguros en lugar de FXML.

Espero que esto ayude 🙂

  • Kotlin y TornadoFX: ¿une una propiedad observable a una function de recostackción?
  • TornadoFX JavaFX Sync Desplazarse por las vistas de tabla
  • ¿Cómo agregar leyenda secundaria al gráfico JavaFX?
  • TornadoFX con TestFX cierra la vista después de cada TestCase
  • Desplazamiento suave en JavaFX TableView
  • Las properties vinculadas no funcionan
  • Lanzar una aplicación TornadoFX desde (un progtwig existente) de Kotlin
  • tornadofx EventBus expande la fila de la tabla usando el object tableview
  • Cómo mostrar datos usando la vista de tree de TornadoFX
  • Context de reinicio de JavaFX
  • TornadoFX envuelve las classs de dominio en ItemViewModel