Social

jueves, 25 de abril de 2013

JavaFX: Tabla Editable


Dentro de las capacidades de las tablas de JavaFX esta la posibilidad de crear celdas personalizadas con otros elementos visuales. En este caso usamos un TextField para permitir crear el efecto de una tabla editable. 


Para entender el código es recomendable haber leido el post que se indica al principio. Ya que se usa una lista de objetos base para llegar la tabla, se necesita definir en este objeto. En este caso es el mismo de la entrada anterior.


Para lograr editar la tabla, se necesita crear un nuevo tipo de celda. En este caso se crea la clase EditingCell que hereda de la celda. Luego se sobrescriben los métodos. El método start inicia la edición y si la celda es nula inicializa el TextField con el método createTextField() con un listener para detectar las teclas Enter y Esc. Luego el método cancel simplemente llama al de la clase superior y maneja el TextField. El método uptate también llama al de la clase superior y actualiza la visualización de la celda mostrando el TextField o no cuando se esta editando. El ultimo método simplemente devuelve el contenido de la celda.

Finalmente le asignamos a la columna deseada una función de retorno o callback. En este caso se le asigna solamente a la columna Teléfono.

No hay comentarios :

Publicar un comentario