Visual Basic - Alternar color de fondo de filas de un ListView

Life is soft - evento anual de software empresarial
 
Vista:

Alternar color de fondo de filas de un ListView

Publicado por Jimmy John (1 intervención) el 27/12/2010 23:14:37
Por favor quien me responde a dicha consulta : La propiedad Backcolor de un Listview , necesito pintar algunas filas de este, no todos las filas solo algunas ya que la propiedad la mencionada te pinta todo el Listview ejemplo
Listview.Backcolor=Vbred --- Esto no, porque te pinta TODO el LISTVIEW , si no especificar algunas filas , segun un criterio de seleccion
"Alternar el color de fondo de las filas de un control ListView visual basic 6.0"
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Alternar color de fondo de filas de un ListView

Publicado por JAvier (44 intervenciones) el 31/12/2010 18:24:52
para cambiar el color de una celda :

lista.ListItems(numero de fila).ForeColor = vbRed
lista.ListItems(numero de fila).ListSubItems(1).ForeColor = vbRed
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Alternar color de fondo de filas de un ListView

Publicado por diana (1 intervención) el 01/08/2012 20:35:30
pero esto no cambia el color de la celda, cambia el color de la letra,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Alternar color de fondo de filas de un ListView

Publicado por ignacio (1 intervención) el 01/03/2012 23:12:00
quisiera saber si encontraste la solución, quiero cambiar color de una columna en particular y tampoco puedo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Alternar color de fondo de filas de un ListView

Publicado por Roberto (6 intervenciones) el 27/12/2013 10:15:50
La idea es usar una imagen y ponerla de fondo.

Tienes un ejemplo en

http://www.vbforums.com/showthread.php?510389-VB6-Listview-Rows-Backcolor-(Without-subclassing)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de BERNARDO HECTOR
Val: 2
Ha disminuido su posición en 18 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Alternar color de fondo de filas de un ListView

Publicado por BERNARDO HECTOR (1 intervención) el 08/07/2016 06:01:59
1
2
3
4
5
6
7
8
'CAMBIO COLOR http://www.solovb.net/index.php/2009/01/07/colorear-un-listview/
For j = 0 To Me.ListView1.Items.Count - 1
If j = Int(j / 2) * 2 Then
	Me.ListView1.Items.Item(j).BackColor = LightGray
Else
	Me.ListView1.Items.Item(j).BackColor = White
End If
Next
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Alternar color de fondo de filas de un ListView

Publicado por Roberto (6 intervenciones) el 09/07/2017 16:34:46
Para VB60:

Existe una técnica para PINTAR una fila de un color, sobre todo el listview, de esta forma se consigue.
(incluir un picture llamado PICBG).

El código es algo similar a esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Private Sub PonColorEnElFondo(IndexFacturado As Long, IndexAlbaran As Long, IndexpeDiDo As Long, IndexPto As Long)
10    With ListViewEconomia
      'If Item.Checked = True Then
      '    .ListItems(Item.Index).SubItems(4) = 1
      'Else
      '    .ListItems(Item.Index).SubItems(4) = 0
      'End If
      Dim I As Long
On Error GoTo VerError:
      '\\ make sure there is data to work with
20    If .ListItems.Count > 0 Then
 
30        picBG.Width = .Width
40        picBG.Height = .ListItems(1).Height * (.ListItems.Count)
50        picBG.ScaleHeight = .ListItems.Count
60        picBG.ScaleWidth = 1
70        picBG.DrawWidth = 1
80        picBG.Cls
90        For I = 1 To .ListItems.Count
 
100           Select Case I
              Case IndexFacturado
110               If V_Colores.TipoDoc.Facturado = 0 Then
120                   picBG.Line (0, I - 1)-(1, I), &H80FFFF, BF
130               Else
140                   picBG.Line (0, I - 1)-(1, I), V_Colores.TipoDoc.Facturado, BF
150               End If
 
160           Case IndexAlbaran
170               If V_Colores.TipoDoc.Albaran = 0 Then
180                   picBG.Line (0, I - 1)-(1, I), vbCyan, BF
190               Else
200                   picBG.Line (0, I - 1)-(1, I), V_Colores.TipoDoc.Albaran, BF
210               End If
220           Case IndexpeDiDo
230                       If V_Colores.TipoDoc.Pedido = 0 Then
240                   picBG.Line (0, I - 1)-(1, I), vbMagenta, BF
250               Else
260                   picBG.Line (0, I - 1)-(1, I), V_Colores.TipoDoc.Pedido, BF
270               End If
280           Case IndexPto
290               If V_Colores.TipoDoc.PRESUPUESTO = 0 Then
300                   picBG.Line (0, I - 1)-(1, I), GetColorPastel(vbRed), BF
310               Else
320                   picBG.Line (0, I - 1)-(1, I), V_Colores.TipoDoc.PRESUPUESTO, BF
330               End If
 
340           Case Else
 
350               picBG.Line (0, I - 1)-(1, I), &HFFFFFF, BF
 
360           End Select
370       Next I
 
380       .Picture = picBG.Image
390   Else
400       picBG.Cls
410       picBG.Height = 0
420       picBG.Width = 0
430       .Picture = picBG.Image
440   End If
450   End With
460   Exit Sub
VerError:
470   VerError "Error al poner colores en datos. Linea:" & Erl
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar