Sección de códigos , trucos y ejemplos para visual basic
<Volver> - Anterior - Siguiente
Proyecto actualizado con algunos cambios: ahora el ejemplo permite además de mostrar las gráficas, aplicarle skins a las columnas también con un ejemplo realizado por Leandro Ascierto
También tiene algunas otras funciones como:
El proyecto tiene tres formularios de ejemplo, uno para cargar un recordset, y otros dos para añadir items en forma manual
Para usar el módulo, previamente se debe crear una instancia de la clase y ejecutar el método SubClassListView pasándole como argumento el control LV
Para crear una columna gráfica, se debe usar el método AddItem, para modificar un elemento el método ModifyItem
Los parámetros son:
Importante Si se añaden, eliminan, o modifiacn datos del LV, luego hay que ejecutar el método RefresData, para que actualice los nuevos valores y poder visualizar las gráficas corectamente, ya que si no mostrará valores en forma erronea
por ejemplo
Importante : Si una columna que contiene datos decimales, no se le indica en el parámetro 9 (NumDigistsAfterDecimal) la cantidad de decimales, es decir queda en 0, la columna mostrará las gráficas pero en forma erronea ... como se ve en esta imagen :
esta columna contiene los siguientes valores ( valores reales de los items )
Y luego a esa misma columna , se le indica en el parámetro 9 (NumDigistsAfterDecimal) el valor 0 ( Sin decimales ), se visualizará de la siguiente forma, redondeando el número , pero mostrando las gráficas con error por que para crear las gráficas usa el valor real que SI contiene decimales
Por eso asi como está el ejemplo, es obligado configurar correctamente las columnas . Es decir si tiene decimales, no indicar 0 en NumDigistsAfterDecimal para que no lo redondee
Importante : Si se añade código al módulo de clase para modificarlo, adaptarlo etc.. , cualquier función, procedimiento o propiedad debe estar declarada por encima de la función "WndProc" que es la que chequea los mensajes para poder redibujar el control. Cualquier código colocado debajo de la función WndProc, se ejecutará solo sin que se llame desde ningún lugar.
El código fuente utiliza un módulo realizado por Leandro Ascierto, para poder subclasificar un control Listview y redibujar una barra de porcentaje, en una columna específica , y de esta manera visualizar los registros de esa columna como datos estadísticos
El formulario tiene dos ejemplos simples que carga dos tablas
Formulario que carga los registros de la tabla Alumnos y visualiza la columna promedio como forma gráfica
El otro botón Carga la tabla productos y muestra las unidades vendidas
Nota:
Se debe pasar los siguientes parámetros a la función que llena el recordset y traspasa los datos al listview
Este es el mismo proyecto con algunos cambios, para poder usar varias columnas en forma gráfica ( También tiene una función para ordenar al hacer clic en el ColumnHeader )
A la función "Configurar", se le debe enviar como parámetros los mismos valores que en el caso anterior, es decir el valor máximo para tomar como referencia, el índice de la columna que se va a utilizar, si se muestra o no el caption del subItem y los colores para la gráfica y el color del texto del SubItem
Nota: verificar que el tipo de dato que contiene el campo sea de tipo numérico si no producirá un error
Importante : si se desea volver a cargar el recordset, por ejemplo con otro tabla, o cambiar la configuración de alguna columna, se deberá antes ejecutar la función unHookListView y luego volver a llamar a la función Configurar
Buscar en Recursos vb
Recursos visual basic - Buscar - Privacidad - Copyright © 2005 - 2009 - www.recursosvisualbasic.com.ar