liteDBGrid
Interpreta el parámetro de creación de la ventana (ctlName desde Self)
como nombre de tabla o view, o como cláusula Select y muestra el contenido en
columnas de anchura predefinida según el tipo de dato. Se puede
cambiar la anchura de las columnas por separado, la altura de las filas, la anchura
del encabezado de fila y la altura del encabezado de columna. Los
cambios pueden guardarse en tablas de sistema entre sesiones de uso. Es
posible seleccionar celdas o filas completas y copiarlas. También modificar los datos o agregar nuevas
filas.
Para entender mejor todas las posibilidades de configurar una cuadrícula
hay que conocer los conceptos bind-link. Desde esa perspectiva
es un control liteDBPager al que se vincula (bind) un control por cada campo
de la cláusula Select. En principio el control es de tipo liteDBEdit, pero se puede cambiar
desde Self (ctlType) para mostrar otro tipo de control en alguna columna.
Además se muestran los encabezados de fila y columna, se dibuja la cuadrícula completa
(los controles sólo son visibles mientras se editan los datos), y tiene otras
funcionalidades típicas de las cuadrículas en general.
En la imagen de arriba las columnas 2, 4 y 7 usan controles tipo liteDBComboBox;
las 3, 5, 8 y 10 tipo liteDBClrPicker y las 11.12 y 13 tipo liteDBCheckBox.
A continuación cómo se ven los datos de diseño de la misma cuadrícula usando Self:
Nota: la cuadrícula lite_styles es parte de Self y está desaconsejado modificar su diseño.
Normalmente esta cuadrícula está oculta al igual que otros "objetos de sistema".
Bugs: al insertar nuevos registros...
Funcionalidades básicas pendientes: borrar varias filas, moverse usando el teclado,
pegar desde el portapapeles.
Funcionalidades avanzadas no implementadas: Fijar columnas o filas.
Ordenar y filtrar filas y cambiar el orden de columnas mientras se ven
los datos (son cosas definidas en la cláusula Select que da origen a la
cuadrícula). Dibujar celdas no activas de columnas conteniendo controles (en
realidad es una funcionalidad de cada control).
Imprimir. liteDBClassedGrid