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

choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   -  
choubaka Messages postés 5534 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"

11 réponses

  1. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    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
  2. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    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
  3. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    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
  4. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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
  7. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    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
  8. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    Dites, je dois pas etre reveille, mais elle est ou la diffrenece entre le code a Chouba et celui a Alix?

    *,*
    \_/
    0
  9. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    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
  10. gaillardps Messages postés 94 Statut Membre 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
  11. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    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
  12. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    vi !

    honte et opprobre sur moi

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