[VB6]-[ListBox]-[Bug?]

choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   -  
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   -
Salut à tous, ô honnorables membres CCM

une fois n'est pas coutume, j'ai un petit prob existentiel.

un pote à moi qui apprends VB6 me pose le dilemne suivant.

dans le code ci-dessous, un form constitué d'une zone liste et de 6 zone de texte est censé afficher dans ces dernière un message signifiant quel Item de la liste a été sélectionné.

Bon, j'ai vu le code, il m'a l'air correct sauf pour l'Item (1) (en l'occurence "Dallas". Il se passe rien. Serait-ce un bug connu? ou alors y a une erreur mais je vois pas où.

Merci d'avance

[code]
Private Sub Form_Load()
lstFirstList.AddItem "Chicago"
lstFirstList.AddItem "Dallas"
lstFirstList.AddItem "Seattle"
lstFirstList.AddItem "Washington"
lstFirstList.AddItem "Houston"
lstFirstList.AddItem "Dayton"
End Sub

Private Sub lstFirstList_Click()
If lstFirstList.Selected(0) Then
txtChicago.Text = "Sélectionné"
Else
txtChicago.Text = "Non sélectionné"
End If

If lstFirstList.Selected(1) Then
txtDallas.Text = "Sélectionné"
Else
txtDallas.Text = "Non sélectionné"
End If

If lstFirstList.Selected(2) Then
txtSeattle.Text = "Sélectionné"
Else
txtSeattle.Text = "Non sélectionné"
End If

If lstFirstList.Selected(3) Then
txtWashington.Text = "Sélectionné"
Else
txtWashington.Text = "Non sélectionné"
End If

If lstFirstList.Selected(4) Then
txtHouston.Text = "Sélectionné"
Else
txtHouston.Text = "Non sélectionné"
End If

If lstFirstList.Selected(5) Then
txtDayton.Text = "Sélectionné"
Else
txtDallas.Text = "Non sélectionné"
End If

End Sub
[\Code]
Chouba
"Obsédé des travaux manuels non pratiquant"
A voir également:

11 réponses

teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Un commentaire d'ordre general, ce serait beaucoup plus propre avec un joli select case...

Pour le reste, en debug pas a pas, il se passe quoi?

*,*
\_/
0
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
Pour le select case, je suis tout à fait d'accord. Mais c'est un exercice dans le cadre d'un apprentissage en VB6.

En fait lorsque qu'on selection un nom de ville dans une liste, la zone de texte correspondante doit indiquer "Sélectionné" et les autres "Non sélectionné". Le prob, c'est que pour l'Item en indice (1), ça marche pos.

?????? je suis franchement dubitatif, c'est pas logique

Chouba
"Obsédé des travaux manuels non pratiquant"
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Si tu essayes avec des Break point ca marche po?
T'as la version original du code sous les yeux (ca pourrait etre une faute d'etourderie...)
Si tu precise l'indice au moment de rentrer les donnees ca marche?
Si tu fais ton test sur autre chose (genre une cle que tu rentrerais ou directement la valeur du champ) ca marche?

*,*
\_/
0
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
ben justement c'est le code source du bouquin.

les breaks marche pos !
les indices non plus!
les tests pas plus, l'indice 1, y veut pas, même si je change d'indice de 1 en 2 ou 3 ça marche pos
pige plus
????????????

merci pour les conseils, je te suis redevable d'un pot, mais je vais plus me casser la tête là dessus aujourd'hui.


Chouba
"Obsédé des travaux manuels non pratiquant"
0

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

Posez votre question
Alix
 
erreur bete dans tes events click, provenant sans doute d un copier coller malheureux
relis ton code
ca marche comme ca:

If lstFirstList.Selected(0) Then
txtChicago.Text = "Sélectionné"
Else
txtChicago.Text = "Non sélectionné"
End If

If lstFirstList.Selected(1) Then
txtDallas.Text = "Sélectionné"
Else
txtDallas.Text = "Non sélectionné"
End If

If lstFirstList.Selected(2) Then
txtSeattle.Text = "Sélectionné"
Else
txtSeattle.Text = "Non sélectionné"
End If

If lstFirstList.Selected(3) Then
txtWashington.Text = "Sélectionné"
Else
txtWashington.Text = "Non sélectionné"
End If

If lstFirstList.Selected(4) Then
txtHouston.Text = "Sélectionné"
Else
txtHouston.Text = "Non sélectionné"
End If

If lstFirstList.Selected(5) Then
txtDayton.Text = "Sélectionné"
Else
txtDayton.Text = "Non sélectionné"
End If
0
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
bien vu et merci, c'est pas un copy paste mais une erreur due à l'aide contextuelle.

en tout cas chapeau

Chouba
"Obsédé des travaux manuels non pratiquant"
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Dites, je dois pas etre reveille, mais elle est ou la diffrenece entre le code a Chouba et celui a Alix?

*,*
\_/
0
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
Alix
If lstFirstList.Selected(5) Then
txtDayton.Text = "Sélectionné"
Else
txtDayton.Text = "Non sélectionné"
End If

Chouba
If lstFirstList.Selected(5) Then
txtDayton.Text = "Sélectionné"
Else
txtDallas.Text = "Non sélectionné" <-------------
End If


Chouba
"Obsédé des travaux manuels non pratiquant"
0
gaillardps Messages postés 94 Date d'inscription   Statut Membre Dernière intervention   6
 
chouba:
If lstFirstList.Selected(5) Then
txtDayton.Text = "Sélectionné"
Else
txtDallas.Text = "Non sélectionné"
End If

Alix:
If lstFirstList.Selected(5) Then
txtDayton.Text = "Sélectionné"
Else
txtDayton.Text = "Non sélectionné"
End If

PS
"Le grain de riz a toujours tort devant la poule"
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
OK, vu :DDD
mais alors ca devrait etre l'evenement 5 qui plante en partie aussi et l'evenement un ne devrait plante qu'en parti itou...
Si tu selectionnes une fois le 5, il reste selectionne tout le temps alors...

*,*
\_/
0
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
vi !

honte et opprobre sur moi

Chouba
"Obsédé des travaux manuels non pratiquant"
0