setconverter seleccionar item from crear combobox javafx

seleccionar - javafx combobox setconverter



El cuadro combinado JavaFX no actualiza el nĂºmero de filas visibles (3)

Estoy cambiando los elementos en un cuadro combinado dinámicamente. Está funcionando perfectamente, excepto que el número de filas visibles permanece fijo según la primera vez que se hace clic en el cuadro combinado.

Ejemplo: los elementos del cuadro combinado se establecen en A y B. Cuando hago clic en el cuadro combinado, se muestran 2 filas con A y B. A continuación, cambio dinámicamente los elementos a C, D y E. Cuando hago clic en el cuadro combinado, se muestran 2 filas con C y D y una barra de desplazamiento.

Ya configuré el

comboBox.setVisibleRowCount(10);

pero sigue mostrando solo 2 filas y una barra de desplazamiento.

Si hago lo contrario, primero configure los elementos en C, D y E y haga clic en el cuadro combinado; muestra las tres filas visibles. Luego cambio dinámicamente los elementos a A y B. Cuando hago clic en el cuadro combinado, ¡se muestran 3 filas! A, B y una fila en blanco.


Aquí hay al menos una solución alternativa: después de cambiar el número de elementos, también cambie visibleRowCount a otra cosa y vuelva al valor deseado. Esto parece desencadenar una actualización de la altura desplegable, aunque no siempre fue preciso en mis pruebas.

Además, si cambia visibleRowCount a 10, efectivamente no pasa nada porque este es el valor inicial y establecerlo en 10 no invalida la propiedad.


Ya se ha enviado un problema en Javafx issue traker. https://javafx-jira.kenai.com/browse/RT-37622

Solo funciona si el combobox tiene un tamaño de celda fijo. Lo hice con CSS.

por ejemplo:

.combo-box .list-view .list-cell{ -fx-cell-size: 35; }


Prueba esto:

box.hide(); //before you set new visibleRowCount value box.setVisibleRowCount(rows); // set new visibleRowCount value box.show(); //after you set new visibleRowCount value

Es un trabajo para mi