Liste déroulante modifiable

Le
ejc
Bonjour à tous,
Ma liste est "locked=true" (pour éviter des modifs intempestives). Par
double-click, elle passe en "lockedúlse" et je voudrais que l'item sur
lequel j'ai fait ce double-click devienne la valeur du contrôle.
Questions :
Lorsqu'on déplace la souris dans une liste, les différents items "passent en
inversion video" ; comment connaitre celui sur lequel on double-clicque ou
clique ?

Code :
Private Sub intitule_DblClick(Cancel As Integer)
Dim Msg As String, tmp
tmp=Me.intitule.?? <= c'est là que ça coince
Msg = "Etes-vous sûr de vouloir changer l'intitulé de cette formation ?"
If MsgBox(Msg, vbInformation + vbYesNo, " ") = vbYes Then
Me.intitule.Locked = False
Me.intitule.Value=tmp
End If
End Sub

Je n'ai pas vu quelle autre procédure événementielle pourrait être utilisée.

Si vous des idées d'avance merci
ejc
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
3stone
Le #7031771
Salut,

"ejc"
| Ma liste est "locked=true" (pour éviter des modifs intempestives...). Par
| double-click, elle passe en "lockedúlse" et je voudrais que l'item sur
| lequel j'ai fait ce double-click devienne la valeur du contrôle.
| Questions :
| Lorsqu'on déplace la souris dans une liste, les différents items "passent en
| inversion video" ; comment connaitre celui sur lequel on double-clicque ou
| clique ?


Tu parles de "liste déroulante modifiable" et en même temps de sélection
dans cette liste qui est locked ???

Donc, pour une liste déroulante (Combobox) on lit la valeur dans
l'événement sur après mise à jour de cette liste.

Pour une zone de liste (Listebox) il faut boucler sur tous les items...

Dim i As Long

For i = 0 To lstMaListe.ListCount - 1
If lstMaListe.Selected(i) = True Then
Exit For
End If
Next

Debug.Print lstMaListe.ItemData(i)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
ejc
Le #7079771
Salut 3stone,
Ma liste est "locked" par défaut (si elle n'est pas Null), en faisant un
double clic sur un de ses items=>plus "locked" (modif. possible) Ok ?
Donc, je voulais que l'item sur lequel on avait effectuer le double clic
devienne la valeur du contrôle... et je crois q'avec le code que tu as
écrit, ça va rouler...
Voilà, voilà... et merci.
"Jero"

"3stone" %
Salut,

"ejc"
| Ma liste est "locked=true" (pour éviter des modifs intempestives...).
Par
| double-click, elle passe en "lockedúlse" et je voudrais que l'item sur
| lequel j'ai fait ce double-click devienne la valeur du contrôle.
| Questions :
| Lorsqu'on déplace la souris dans une liste, les différents items
"passent en
| inversion video" ; comment connaitre celui sur lequel on double-clicque
ou
| clique ?


Tu parles de "liste déroulante modifiable" et en même temps de sélection
dans cette liste qui est locked ???

Donc, pour une liste déroulante (Combobox) on lit la valeur dans
l'événement sur après mise à jour de cette liste.

Pour une zone de liste (Listebox) il faut boucler sur tous les items...

Dim i As Long

For i = 0 To lstMaListe.ListCount - 1
If lstMaListe.Selected(i) = True Then
Exit For
End If
Next

Debug.Print lstMaListe.ItemData(i)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)



Publicité
Poster une réponse
Anonyme