Combo box suite...

batteur_fou Messages postés 15 Date d'inscription mardi 26 juin 2007 Statut Membre Dernière intervention 22 décembre 2007 - 17 nov. 2007 à 11:59
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 - 17 nov. 2007 à 17:41
Re-bonjour, j'ai oublié de vous demander quelque chose...

Pour ajouter un élément dans dans une combobox, j'utilise la syntaxe AddItem
Seulement, si j'ai 2 colonnes dans ma ComboBox, comment dois-je m'y prendre pour que pour que 2 éléments associés soient sur la même ligne (par exemple, le nom de quelqu'un et son âge)

    With ComboBox3
        .Clear
        For i = 1 To NbPersonne
                .AddItem (Personne(i).nom)      dans la colonne 1  |
                .AddItem(Personne(i).age)        dans la colonne 2  | de la même ligne
                Else
         Next i
    End with

6 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
17 nov. 2007 à 13:13
Salut,
La combo de base ne permet pas d'afficher plusieurs colonnes à ce que je sache...
Si tu  dois afficher plusieurs valeurs, une idée est de surcharger ToString sur ton object pour qu'il retourne ce que tu veux (une concaténation de Properties par exemple).
ToString est appelé par la combo lors de l'affichage si DisplayMember n'est pas setté...

<hr />
-My Blog-
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
17 nov. 2007 à 14:48
Sous Office, soit en VBA, tu as la possibilité d'utiliser des colonnes. Il faut alors y aller de cette façon.

Combo.AddItem
Combo.List(0,0) = "Ligne1, Colonne1"
Combo.List(0,1) = "Ligne1, Colonne2"

Si tu n'es pas sous Office, il faudrait alors spécifier sous quel environnement tu programmes.

MPi²
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
17 nov. 2007 à 15:00
Salut,

Sous VB6, il suffit de faire une concaténation de chaine :

With ComboBox3
        .Clear
        For i = 1 To NbPersonne
                .AddItem (Personne(i).nom)  & " " & .AddItem(Personne(i).age) 
       Next i

 End with

Salut MPi² et Bidou
A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
batteur_fou Messages postés 15 Date d'inscription mardi 26 juin 2007 Statut Membre Dernière intervention 22 décembre 2007
17 nov. 2007 à 17:02
Merci à vous!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
17 nov. 2007 à 17:11
Salut Exploreur,
ton 2e AddItem n'est pas nécessaire ...

MPi²
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
17 nov. 2007 à 17:41
Ma réponse était donnée pour VB.NET :)

<hr />
-My Blog-
0
Rejoignez-nous