Les Snippets

Connexion

Ajouter une colonne à une listview à partir d'une collection (et alterner les forecolor)

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 02/03/2007 05:15:36 et initié par PCPT [Liste]
Date de mise à jour : 20/06/2007 09:00:28
Vue : 4446
Catégorie(s) : Trucs & Astuces, Control
Langages dispo pour ce code :
- VB6, VBA



Langage : VB6 , VBA
Date ajout : 02/03/2007
Posté par PCPT [Liste]
DateMAJ : 20/06/2007
Private Sub AddColumn(LV As ListView, oCol As Collection, Header As  String, Width As  Long, Optional  Color1 As OLE_COLOR = vbBlack, Optional  Color2 As OLE_COLOR = vbRed)
    Dim Litem As ListItem, i As Integer, j As Integer, lCol As OLE_COLOR
    i = LV.ColumnHeaders.Count
    
    If i = Then
'       caption/name
        LV.ColumnHeaders.Add 1, , Header
        LV.ColumnHeaders(1).Width = Width
        For i = To oCol.Count
            Set Litem = LV.ListItems.Add(, ,  oCol.Item(i))
            lCol = IIf(i And 1, Color1, Color2)
            LV.ListItems(i).ForeColor = lCol
        Next i
    Else
'       value, on ajoute une  colonne et on la remplie
        LV.ColumnHeaders.Add , , Header
        LV.ColumnHeaders(i + 1).Width = Width
        For j = To oCol.Count
            Set Litem = LV.ListItems.Item(j)
            Litem.SubItems(i) = Trim$(oCol.Item(j))
            lCol = IIf(j And 1, Color1, Color2)
            Litem.ListSubItems(i).ForeColor = lCol
        Next j
    End If
End Sub

'   EXEMPLE  D'UTILISATION
Private Sub Form_Load()
    Dim c1 As New Collection
    Dim c2 As New Collection
    With ListView1
        .LabelEdit = lvwManual
        .FullRowSelect = True
        .View = lvwReport
        .GridLines = True
    End With
    
    c1.Add "voici": c1.Add "une": c1.Add "première": c1.Add "colonne"
    Call AddColumn(ListView1, c1, "Colonne  1"800)
    c2.Add "et voici": c2.Add "une": c2.Add "deuxième": c2.Add "colonne"
    Call AddColumn(ListView1, c2, "Colonne  2"900&H8000&&HFF0000)
    Set c2 = Nothing
    Set c1 = Nothing
End Sub


Snippets en rapport avec : Couleur, Ajouter, Colonne, Collection, Listview



Codes sources en rapport avec : Couleur, Ajouter, Colonne, Collection, Listview

{C# / C#.NET} INTERCEPTION DU CLICK DROIT SUR LISTVIEW (DIFFÉRENCIER LE CLICK SUR L'ENTÊTE COLONNE, L'ITEM ET LES SUBITEMS)
Ce code permet d'intercepter le click droit sur les différentes parties d'un listview (Réponse à ...

{Visual Basic, VB6, VB.NET, VB 2005} LISTBOX/LISTVIEW PERSONNALISABLE A VOLONTE
Il s'agit d'une classe (accompagnée d'un module) qui gère des lignes de contrôles. - Il n'y a pas d...

{C# / C#.NET} NOTRESIZABLELISTVIEW : FIGER LA LARGEUR DES COLONNES
Cette classe bloque le redimensionnement des colonnes. - Recuperation de l'objet columnheader. -...

{Visual Basic, VB6, VB.NET, VB 2005} POUR CEUX QUI PRENNENT LES LISTVIEW POUR DES LISTBOX
En gros c'est une fonction pratique plus qu'autre chose mais bon je me suis dit que cela pouvait int...

{C# / C#.NET} SELECTION COULEUR LISTVIEW
Sélection en couleur dans un ListView C# Ce code s'adresse aux débutants. Il explique comment dé...

{C / C++ / C++.NET} TRI DES COLONNES D'UNE LISTVIEW (WIN32)
ListView avec 3 colonnes, et trois manières différentes de trier les colonnes, et affichage de la pe...

{Visual Basic, VB6, VB.NET, VB 2005} 1 LIGNE SUR 2 EN COULEUR DANS UN LISTVIEW
Voici comment de manière simple mettre une ligne sur 2 en couleur dans un listview. Le fonctionneme...

{Visual Basic, VB6, VB.NET, VB 2005} LISTVIEW (TEXTE COULEUR)
S'adresse à des débutants comme moi, qui se demandent comment changer la couleur du texte à chaque n...

{Visual Basic, VB6, VB.NET, VB 2005} COULEURS SYSTÈME DANS UN LISTVIEW
Voici une utilisation simple de l'API GetSysColor. Tous les éléments du système sont représentés ...

{Visual Basic, VB6, VB.NET, VB 2005} FOND D'UN LISTVIEW: AFFICHER DES BARRES DE COULEUR CONFIGURABLES (CLASS)
Le contrôle Listview ne permet pas d'attribuer un fond sous forme de barres de couleur. Le Listview...