Listbox et arrachage de cheveux....

Résolu
Signaler
Messages postés
137
Date d'inscription
samedi 11 septembre 2004
Statut
Membre
Dernière intervention
10 septembre 2006
-
Messages postés
137
Date d'inscription
samedi 11 septembre 2004
Statut
Membre
Dernière intervention
10 septembre 2006
-
Voilà mon blème, ayant un certain nombre de listbox sur une page et ça ne m'arrange pas de cliquer à chaque fois dans la listbox pour valider mon choix.
Donc quand on press sur le scroll comment fait-on pour détecter le text dans la listbox?
ou
si on a un label comment fais-t-on pour que le changement dans la listbox s'affiche? sans cliquer dans la listbox.
ou
avec le contrôle text l'on dispose de l'action : Text1_Change(), donc comment avoir la même chose avec un listbox....

Pour plus de clarté c'est 3 fois la même question, mais là je pense avoir été clair...
Je vous remercie pour votre aide...

6 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Ca y est, j'ai compris : Tu as simplement oublié de nous dire que ta ListBox avait un design particulier (et non habituel) : Tu ne visualises qu'une donnée !
En général, les ListBox affichent une dizaine de données.
Donc, il faut regarder la propriété TopIndex qui te fournira l'index de l'item qui se trouve en haut de la liste.
Comme chez toi, il correspond au seul Item affiché, c'est facile :
Texte de l'item affiché = maListBox.List(maListBox.TopIndex)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
En supposant que tu aies ceci dans List1_Click
Label1.Caption = List1.List(List1.ListIndex)
Bah, il suffit d'aller dans List1_KeyUp et mettre
Call List1_Click
.KeyUp se déclenche quand une touche est relachée.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
Messages postés
137
Date d'inscription
samedi 11 septembre 2004
Statut
Membre
Dernière intervention
10 septembre 2006

Désolé mais il détécte très bien quand on presse dans la list mais pas le scroll....
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
.. Qu'est ce que tu appelles le scroll ?
Parce que si tu scrolles les items, ça ne les sélectionnent pas ...
Je ne comprends pas ce que tu veux dire.
(reflechissement ...)
Ah, je crois avoir compris : c'est le scroll d'un autre composant ?
Si c'est le cas, il suffit de mettre du code dans List1_LostFocus (voire Validate ?)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
Messages postés
137
Date d'inscription
samedi 11 septembre 2004
Statut
Membre
Dernière intervention
10 septembre 2006

quand l'on change la valeur à l'intérieur du control listbox on appuie à droite sur un bouton en haut à droite ou un bouton en bas à droite ( le scroll). La valeur de la liste change, cependant si l'on ne presse pas à l'intérieur de la liste et que tu presse sur enregistrer et bien l'on a beau avoir changé la valeur de la liste avec le scroll (a droite) et bien tu as tout sauf la valeur indiqué dans la listbox...
Je sais pas si c'est beaucoup plus clair.
pour l'instant j'ai contourné le problème avec un textbox et un scroll bar, car j'arrive sans difficulté à récupérer la valeur du textbox... mais c'est un peu chiant....
Messages postés
137
Date d'inscription
samedi 11 septembre 2004
Statut
Membre
Dernière intervention
10 septembre 2006

j'ai oublié de dire que ma listebox était sur une ligne....
désolé