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.
- En TornadoFX, ¿cómo puedo hacer que una propiedad cambie cuando cambian otras properties?
- CellCache se representa inesperadamente en TableView con tornadoFX
- Cómo cambiar la vista en TornadoFx
- TornadoFX ItemViewModel se actualiza si se cambia el object de respaldo que no expone las properties de JavaFX
- Usar bibliotecas de UI de terceros con TornadoFX
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.
- TornadoFX - eliminar elemento con ContextMenu hacer clic derecho
- El text de la label no se actualiza aunque el hilo de la interfaz de usuario parece responder
- tornadoFX togglebutton no tiene propiedad de text
- TornadoFX cómo agregar validation al editar TableView
- TornadoFX filechooser
- Cómo instalar un controller de clics en una vista de list dinámica (en tornadofx)
- ¿Cómo puedo crear un encabezado de columna nested / dividido usando TornadoFx?
- TableView de Tornadofx usando comboBox y agregando FXEvent en los botones
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 🙂
- ¿Cómo puedo hacer que cada punto final de descanso lea una cookie y use ese valor en okhttp Interceptor?
- No se pueden agregar las extensiones de Kotlin para Android a mi proyecto