begin process at 2012 02 15 10:15:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

Débutants

 > 

VB6 Ligne spécifice en Gras dans un ListView


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

VB6 Ligne spécifice en Gras dans un ListView

mardi 5 juin 2007 à 17:19:17 | VB6 Ligne spécifice en Gras dans un ListView

JeffC1977

Rebonjour...

Derniere question de la journée.....

J'ai un ListView que j'aimerais mettre certain ligne en gras.
J'ai trouvé un bout de code permettant de faire cela... Mais je n'y arrive pas...
http://www.vbfrance.com/codes/CERTAINES-DONNEES-GRAS-DANS-LISTE_1989.aspx

Je ne sais pas si c'est causé par ADO...
Voici mon code....

    Do While BD2007.EOF = False
        With ListView2.ListItems.Add(, , IsN(BD2007!DOSSIER))   
            .SubItems(1) = IsN(BD2007![DATE D    'OUVERTURE])   
           .SubItems(2) = BD2007![NATURE DU TRAVAIL]
            If InStr(.SubItems(2) = IsN(BD2007![NATURE DU TRAVAIL]), "+") Then
                ListView2.ListItems.Item(2).Bold = True
            
End If
            .SubItems(3) = IsN(BD2007!LOTS)                
        End With
        Dim Count As Integer
        Count = Count + 1
        BD2007.MoveNext

Merci de votre aide...

P.S. je ne suis pas encore tres habile avec les ListView....

mardi 5 juin 2007 à 17:24:15 | Re : VB6 Ligne spécifice en Gras dans un ListView

jrivet

Membre Club
Réponse acceptée !
C'est quoi ce IF
If InStr(.SubItems(2) = IsN(BD2007![NATURE DU TRAVAIL]), "+")

Tu es sur que ce ne serait pas plutot

If InStr(1,.SubItems(2), "+") Then
'si toutefois tu recherche un + dans et que c'est tat condition pour mettre en gras.

@+: Ju£i€n
Pensez: Réponse acceptée
mardi 5 juin 2007 à 17:32:17 | Re : VB6 Ligne spécifice en Gras dans un ListView

Doc VB

Oui, et à la place de :
...
If InStr(1,.SubItems(2), "+") Then
   ListView2.ListItems.Item(2).Bold = True
End If
...
Je verrais ça :
...
If InStr(1,.SubItems(2), "+") Then
   .Bold = True
End If

...
mardi 5 juin 2007 à 17:32:27 | Re : VB6 Ligne spécifice en Gras dans un ListView

jmfmarques

Membre Club

Un premier réflexe, d'abord !
J'insèrerais volontiers un msgbox (en rouge ci-dessous), juste pour voir si ma condition est présente (auquel cas ce serait bien l'instruction de mise en gras qui serait défaillante) ou si, au contraire, elle ne l'est pas (et dans ce cas, ce serait ma condition, qu'il me faudrait accuser, et pas la syntaxe de mise en gras... non ?

If InStr(.SubItems(2) = IsN(BD2007![NATURE DU TRAVAIL]), "+") Then
                msgbox "j'y suis"
                ListView2.ListItems.Item(2).Bold = True
End If
mardi 5 juin 2007 à 17:36:05 | Re : VB6 Ligne spécifice en Gras dans un ListView

JeffC1977

Salut...
Peut-être que ma condition n'est pas bonne mais..... Je t'explique...

Dans mon code j'ai mis 4 colonnes... Mais je veux que si et seulement si la colonne "Nature du Travail" contient un "+" alors mais la ligne du ListBox en Gras....

Si je prend ta condition... Je n'ai qu'un Numéro de dossier qui devient en gras et ce dossier ne contient pas de "+" dans la colonne Nature du Travail. Il est à noter que j'ai 176 enregistrement qui s'affichent dans le ListView et je devrais avoir une cinquantaine de lignes en gras

Peut-être mon problème provient d'ailleurs dans la partie du code que j'ai mis dans mon premiere message.

J'attends de ton aide.. Merci d'avance

mardi 5 juin 2007 à 17:41:54 | Re : VB6 Ligne spécifice en Gras dans un ListView

jmfmarques

Membre Club
Commence par le commencement, donc. Celà t'évitera des "peut-être que ma condition n'est pas bonne"
Mets ce msgbox, lance, et tu sauras sans ambiguité si ta condition est bonne ou non !
mardi 5 juin 2007 à 17:46:26 | Re : VB6 Ligne spécifice en Gras dans un ListView

JeffC1977

Rebonjour....

Effectivement ma condition n'est pas bonne...

Je ne rentre pas dedans.....

J'ai essayé la condition de DocVB et je rentre dans la conditon... et ca marche.
Toutefois, les lignes qui contienents un "+" ne se mettent pas en Gras ????

merci d'avance...
mardi 5 juin 2007 à 17:50:21 | Re : VB6 Ligne spécifice en Gras dans un ListView

Doc VB


Je n'ai fait que reprendre la condition que Julien déjà avait corrigé au préalable, mon action consistait simplement à mettre en gras le bon élément (en l'occurence l'élément de la première colonne). Pour mettre la ligne entière en gras, il faut compléter ton code :
If InStr(1,.SubItems(2), "+") Then
   .Bold = True
   .SubItems(1).Bold = True
   .SubItems(2).Bold = True
   .SubItems(3).Bold = True
End If

mardi 5 juin 2007 à 18:04:46 | Re : VB6 Ligne spécifice en Gras dans un ListView

JeffC1977

Daccord... j'y avais pensé... et j'étais justement entrain de faire quelque test mais... si je fais ca comme code ca me dit:
Erreur de compilation
Qualificateur incorect

Do While BD2007.EOF = False
        With ListView2.ListItems.Add(, , IsN(BD2007!DOSSIER))
            .SubItems(1) = IsN(BD2007![DATE D    'OUVERTURE])


            .SubItems(2) = BD2007![NATURE DU TRAVAIL]
            'If InStr(.SubItems(2) = IsN(BD2007![NATURE DU TRAVAIL]), "+") Then
            If InStr(1, .SubItems(2), "+") Then

                .Bold = True

               'ListView2.ListItems.Item(2).Bold = True
                .SubItems(3).Bold = True
                .SubItems(4).Bold = True
                .SubItems(5).Bold = True
                .SubItems(6).Bold = True
                .SubItems(7).Bold = True
                .SubItems(8).Bold = True
                .SubItems(9).Bold = True
                .SubItems(10).Bold = True
                .SubItems(11).Bold = True


            End If
            .SubItems(3) = IsN(BD2007!LOTS)
            .SubItems(4) = IsN(BD2007!CADASTRE)
            .SubItems(5) = IsN(BD2007!CLIENTS)
            .SubItems(6) = IsN(BD2007!TELEPHONE)
            .SubItems(7) = IsN(BD2007!adresse)
            .SubItems(8) = IsN(BD2007!MUNICIPALITE)
            .SubItems(9) = IsN(BD2007![DATE DE LIVRAISON])
            .SubItems(10) = IsN(BD2007!TERMINE)
            .SubItems(11) = IsN(BD2007!REMARQUES)

        End With
        Dim Count As Integer
        Count = Count + 1
        BD2007.MoveNext
    Loop

Merci de votre aide c'est tres aprécié

mardi 5 juin 2007 à 19:48:56 | Re : VB6 Ligne spécifice en Gras dans un ListView

nirega

Réponse acceptée !
salut Jeff
regarde ce code et il va faire ton bonheur

Function rand(lowerbound As Long, upperbound As Long) As Long
    Randomize
    rand = CLng((upperbound) * Rnd + lowerbound)
    Debug.Print rand
End Function
Private Sub Form_Load()
    Dim itm As MSComctlLib.ListItem
    Dim subItm As MSComctlLib.ListSubItem
    Dim arNom
    
    arNom = Array("ALEX", "JEFF", "MARIE-FRANCE", "NATHALIE")
    
 
   ListView1.ColumnHeaders.Add , , "Nom", ListView1.Width / 4
   ListView1.ColumnHeaders.Add , , "Prénom", ListView1.Width / 4
   ListView1.ColumnHeaders.Add , , "Age", ListView1.Width / 4, lvwColumnCenter
   ListView1.ColumnHeaders.Add , , "Cp", ListView1.Width / 4, lvwColumnCenter
 
   ListView1.View = lvwReport
    For i = 1 To 20
        Set itm = ListView1.ListItems.Add(, , arNom(rand(0, 3)))
        itm.Bold = True
       
        Set subItm = itm.ListSubItems.Add(, , arNom(rand(0, 3)))
        subItm.ForeColor = vbGreen
        subItm.Bold = True
       
        Set subItm = itm.ListSubItems.Add(, , rand(18, 50))
        subItm.ForeColor = vbRed
        subItm.Bold = True
       
        Set subItm = itm.ListSubItems.Add(, , rand(1, 95))
        subItm.ForeColor = vbBlue
        subItm.Bold = True
    Next i
 
End Sub

la fonction rand n'est pas nessecaire pour toi

nirega
a+

1 2

Cette discussion est classée dans : listview, subitems, gras, isn, bd2007


Répondre à ce message

Sujets en rapport avec ce message

ListView et subitems en gras [ par Hobby ] Bonjour,Je n'arrive pas a metre le subitems (deuxieme colone en gras) il y a un truc ?J'utilise peut etre pas le bon controle, je cherche a faire une VB6 ADO requete avec un Format Oui/Non avec Access [ par JeffC1977 ] Salut...J'ai une petite question pour finaliser ma requete SQL. J'ai VB6 et j'utilise ADO. Je me connecte à un BD Access. Je veux faire afficher certa Remplissage de ListView [ par jubourbon ] Bonjour,Premiere programmation en vb.net, je cherche à remplir une listview, mais n'arrive qu'a avoir une belle liste vide.Je m'explique, j'ai créé un VB6 Voir le données du Listview au démarage [ par JeffC1977 ] Salut...Petite question que j ene réussi pas à saisir pourquoi ca ne fonctionne pas...Je veux que lorsque je démarre mon programme je vois dans mon li Couleurs des subitems dans un listview [ par omgirl ] Bonjour,J'aimerai si l'on peut changer la couleur du texte dans un listview mais seulement sur une colonne, j'ai déja chercher un peu partout mais rie modification des fonts pour les subitems des listview [ par elomiel ] salut à nouveauautre petit soucis, toujorus en .net : il est dit que l'on peut modifier les attributs des sous-éléments des listview. or, j'arrive bie couleur lors du trie dans listview [ par steph064 ] Voilà, quand je suis dans visual studio quand je test l'appli (avec F5), lorsque je clic sur l'entête de colonne pour trier, je perds la couleur rouge ListView et Images en début de String [ par kinola ] Voilà j'ai une listView en lvwReport et j'ai besoin d'une colonne avec juste une petite icone.J'ai tout essayé sans succès.Si l'un d'entre vous à une VB6 Afficher plus d'un élément dans un ListBox [ par JeffC1977 ] Salut....J'ai regarder quelques programmes sur le site mais je n'y arrive pas...Je fais une recherche SQL et je veux que par exemple si je recherche l VB6 ADO RecordCount [ par JeffC1977 ] Salut....À noter que c'est la première fois que j'utiilise le RecordCount et que je ne suis pas très habile avec ADOJ'essais de faire une programme po


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,870 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales