| |||
Color en toda la fila de un listview Hola a todos, y ante todo gracias. Mi problema es el del titulo. Tengo un listview en visual basic 6 donde necesito colorear toda una fila. se hacerlo con un dato solo de una fila, pero ¿como se hace con toda la fila? Muchas gracias |
| ||||
Respuesta: Color en toda la fila de un listview Listview solo permite colorear LAS LETRAS, no el FONDO... Es decir, podes colorear TODO EL FONDO COMPLETO, pero no linea por linea, ó campo por campo Si queres colorear todo el fondo (osea en vez de blanco otro color) es sensillo
Código:
Ahora si queres colorear la letra de alguna linea tenes en las FAQ un codigo mio, te lo pongo igual acaListView.BackColor = ELCOLOR
Código:
Le envias los parametros y listo...'========== Codigo realizado por CULD ========== '============= [email protected] =============== 'Descripcion: Sub proceso al cual se le envian los parametros 'LISTVIEW, LINEA, COLOR, y automaticamente cambia el color de esa linea '----------------------------------------------- Public Sub ListView_ColorearLinea(LaLista As ListView, Linea As Long, Color As Long) Dim X As Integer 'Verifico si la linea que quiere modificar existe If Linea > LaLista.ListItems.Count Then Exit Sub End If 'modifico el color de la primer columna LaLista.ListItems(Linea).ForeColor = Color 'modifico el color de las demas columnas For X = 1 To LaLista.ColumnHeaders.Count - 1 'verifico que el subitem tenga algo escrito, por que si no tiene nada tira 'error de "subindice fuera de intervalo" If Trim(LaLista.SelectedItem.SubItems(X) <> "") Then LaLista.ListItems(Linea).ListSubItems(X).ForeColor = Color End If Next X 'actualizo el list para que se vean los cambios LaLista.Refresh End Sub Si queres que te coloree todas las lineas tenes que recorrer con un for toda la lista
Código:
Dim X as Long For X = 1 To ListView.ListItems.Count Call ListView_ColorearLinea(ListView, X, ELCOLOR) Next X |
| |||
Respuesta: Color en toda la fila de un listview Gracias, lo adapte con los nombres que yo use y funciono perfectamente. La verdad es que crei que habia alguna forma de hacerlo en toda la fila de una vez. Y el detalle de verificar que tenga algo escrito es de un experto. Gracias nuevamente. |