FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
El mejor componente para...
Hola
He estado buscando y buscando el mejor componente para lo que quiero hacer y no logro encontrarlo (Quizas no logro encontrar las propiedades adecuaas a los componentes existented). Seguramente alguno de ustedes conoce algun componente o configuracion para esto: Tengo una base de datos, y dependiendo de la consultaque se haga, se van poblando tablas. Lo que estoy buscando es una tabla. Intente con un TListView en modo vsReport, pero al agrear los campos (Ya que cada consulta tiene sus propios campos) estos se demoran en agregarse (Maximo 11 campos). Uno ve como se va agregando campo a campo y definitivamente no quiero que pase. Quiero que el configurar los campos sea instantaneo. Con un TStringGrid, la cofiguracion de campos (En verdad el agregar la primera fila y poniendo cono FixedRows:=1) es instantanea, pero no puedo agregar imagenes. (Eso creo). Por lo tanto, lo que necesito es una tabla que:
Por ejemplo: Tengo la siguiente lista en la base de datos (Sobre series de anime): Nombre | Numero Episodio | Resolucion Hellsing 001 640x580 Hellsing 002 640x580 Hellsing 003 640x580 NGE 021 540x360 HGE 022 540x360 Y quiero que en la tabla se pueda ver asi: Nombre | Numero Episodio | Resolucion + Hellsing | | + NGE | | Y cuando uno hace click en algun grupo, se vea asi: Nombre | Numero Episodio | Resolucion - Hellsing | | Hellsing | 001 | 640x580 Hellsing | 002 | 640x580 Hellsing | 003 | 640x580 + NGE | | Esto no es un requisito, pero si alguien conoce algun componente que haga bien eso, sera bienvenido. Bueno, espero que se haya entendido y muchas gracias por su tiempo. Saludos. |
#2
|
||||
|
||||
Cita:
Justo antes de modificar los elementos comienzas el bloque con ListView.Items.BeginUpdate y cuando terminas la actualización cierras el bloque con ListView1.Items.EndUpdate, de esta forma no se verá en pantalla como se agregan los elementos y además le dará una mayor velocidad a la ejecución Cita:
http://www.lischke-online.de/VirtualTreeview/VT.php Un saludo Última edición por Héctor Randolph fecha: 04-02-2005 a las 17:32:11. |
#3
|
||||
|
||||
Voy a hacer una sugerencia con respecto al ListView aunque está un poco de más ya que definitivamente el control que te sugiere Héctor es el mejor.
El problema con el ListView no es de BeginUpdtae y EndUpdate, aunque ayudan en algo. Simplemente no está hecho para grandes cantidades de datos. Y desde luego el StringGrid no sirve de nada. Muy pocas veces lo he usado para algo, es un control verdaderamente horrible. Sin embargo el ListView maneja lo que se llama modo virtual (OwnerData = true) y en este modo es igual de rápido que el VirtualTreeView que menciona Héctor, pero sin todas las bondades de presentación que este último presenta. En modo virtual tú no llenas al ListView de datos sino que simpleente le indicas cuántos elemento hay y programas su evento OnData. El ListView, conforme el usuario se desplaza por él, genera el evento OnData indicando el índice del item que debe desplegarse y es cuando asignas valores para ese ítem. Yo he usado esto para desplegar resultados de consultas sql con miles de registros y funciona perfectamente bien. Pero como te digo, además de que el VirtualTreeView funciona, por construcción, en modo virtual, se acerca más a lo que deseas (combinación de TreeVirew con ListView) y te permite insertar gráficos y sobre todo una presentación que puede ser muy impresionante (basta que veas los ejemplos que trae). // Saludos |
#4
|
|||
|
|||
Hola
Gracias por sus respuestas. Baje el TVirtualTree y lo instale. Pero no me funciono... y no se por que. Tiene algun problema con Delphi 2005? hay que hacer algo aparte de hacer doble click en el installer? Gracias nuevamente. Saludos. |
#5
|
|||
|
|||
Hola
No se preocupen, ya logre agregar el VT a la lista de componentes. Saludos. |
|
|
|