Mostrar una lista donde la altura de la línea se ajuste exactamente al contenido es una necesidad muy común. 4D View Pro incluye una nueva característica para que usted pueda ahora controlar la altura de cada fila independientemente en un listbox para que se ajuste a su contenido. Para saber más sobre 4D View Pro, consulte esta entrada del blog.
En realidad, ahora hay dos maneras de definir la altura de la fila en un listbox
- usando nuevos comandos dedicados
- utilizando una nueva matriz de control
Usando nuevos comandos
Los nuevos comandos LISTBOX SET ROW HEIGHT y LISTBOX Get row height permiten establecer y obtener la altura de cada fila individualmente.
Si ejecuta este código
LISTBOX SET ROW HEIGHT(*; "listboxname";1;184) //Pellentesque
LISTBOX SET ROW HEIGHT(*; "listboxname";2;41) //Vestibulumn
LISTBOX SET ROW HEIGHT(*; "listboxname";3;86) //Suspendisse
Se obtiene el siguiente resultado:
Uso de una matriz de control de altura
Puedes utilizar esta propiedad para especificar el nombre del array de altura de fila que quieres asociar al listbox.
Por ejemplo, si escribes
//la unidad actual son las líneas
ARRAY LONGINT(<>RowHeightArray;20)
<>RowHeightArray{5}:=3
La quinta fila del listbox tendrá una altura de tres líneas, mientras que todas las demás filas mantendrán su altura por defecto.
También se puede asociar el array de control de altura mediante programación. Los comandos LISTBOX SET ARRAY y LISTBOX Get array aceptan ahora un selector de matriz de altura de fila de Listbox que permite definir la matriz de control de altura de fila mediante programación.
LISTBOX SET ARRAY ( {* ;} object ; Listbox row height array ; <>RowHeightArray )
<>RowHeightArray:=LISTBOXGet array ( {* ;} object ; Listbox row height array )
¿Quieres probarlo por ti mismo? ¡Sólo tienes que descargar el siguiente ejemplo!
Para más detalles, consulte los siguientes artículos de la documentación de 4D v16: