https://foro.gambas-es.org/viewtopic.php?f=4&t=280
-----------------------------------
abarzuaf
Lunes, 14 Diciembre 2009, 23:21

Colores Alternados En Un ListBox O ListView
-----------------------------------
Hola.

Leí en el ultimo post que no se puede generar colores alternados en un Listbox o Listview. En teoría,¿Se podría crear un control heredado
que tuviera esa característica?.
Mi idea es que mis datos queden mejor visualizados, como en la imagen.
[img]http://foro.gambas-es.org/files/images/98/listbox.png[/img]

Saludos


-----------------------------------
jguardon
Lunes, 14 Diciembre 2009, 23:42

Re: Colores Alternados En Un ListBox O ListView
-----------------------------------
El Listview y el Columnview no admiten colores para cada fila, pero sí el control GridView. Hay una forma de mostrar los datos en el GridView que a partir de una consulta sql permite mostrar los datos (muuuuchos datos) de la manera más rápida posible, ya que sólo se dibujan las celdas visibles en cada momento y que permite hacer lo que tú quieres mediante el evento 'Data'. Puede ser un poco difícil de entender -a mí me costó al principio- pero es sencillo.

Te pongo el código del evento 'Data' del gridview:

[code linenumbers=false syntax=gambas]PUBLIC SUB gridview1_Data(Row AS Integer, Column AS Integer)
    
    $hres.MoveTo(Row) 
        
    IF row MOD 2 = 0 THEN gridview1.Data.Background = Color.LightBackground
    ' si el índice la fila  es par, se colorea.
END[/code]

 [img]http://foro.gambas-es.org/files/images/3/pantallazo_1260831006_489883.png[/img] 

El evento _Data se dispara siempre que el objeto Result ($hres, en este caso) tenga datos que recoger de la consulta sql, cuando se ejecuta desde otro procedimiento. Aunque es otra de las cosas que no está bien documentada, este es el enlace en el wiki de Gambas:

http://gambasdoc.org/help/comp/gb.qt/gridview/.data?es

Saludos


-----------------------------------
abarzuaf
Martes, 15 Diciembre 2009, 01:34

Re: Colores Alternados En Un ListBox O ListView
-----------------------------------
¡Fantastico!, muchas gracias por el dato. :mryellow: 

Saludos


