Sélection automatique d'une ligne dans une msflexgrid [Résolu]

Messages postés
49
Date d'inscription
mercredi 8 novembre 2000
Dernière intervention
24 mars 2010
- - Dernière réponse : cs_MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
- 24 oct. 2007 à 11:36
Bonjour,

je souhaiterais pouvoir sélectionner une ligne (unique) dans ma flexgrid de façon automatique, en rapport avec ma playlist windows media player, la flexgrid est en fait un affichage de la playlist.

Voila un bout de code pour avoir une meilleure idée :

Private Sub TimerCompteur_Timer()
Dim Pl As IWMPPlaylist
Dim j As Integer, i As Integer
Dim Cible As String


FrmPlayer.LblCompteur.Caption = FrmPlayer.wmp.Controls.currentPositionString
'recupere le nom du média en cours
Cible = FrmPlayer.wmp.Controls.currentItem.Name
'recupere la playlist actuelle dans Pl
Set Pl = FrmPlayer.wmp.currentPlaylist
j = Pl.Count
For i = 0 To j - 1
'compare le nom média avec le nom de la playlist pour récupérer son index
    If Cible = Pl.Item(i).Name Then
        'sélectionne la ligne correspondant à l'index de la playlist
        FrmPlaylist.FlexPlaylist.RowSel = i
    Exit For
End If
Next i
End Sub

Le problème qui se pose avec cette méthode, c'est que l'ancienne ligne reste sélectionnée. Comme si je fesais un multiselect avec la touche shift. Donc a la lecture du premier media, pas de souci mais au second, 2 lignes sont sélectionnées et ainsi dessuite !

La seule réponse que j'ai pu trouver, c'est un code du style (résultat encore pire) :

Private Sub FlexPlaylist_SelChange()
frmplaylist.FlexPlaylist.RowSel = frmplaylist.FlexPlaylist.Row
End Sub

je n'ai plus qu'une ligne sélectionnée mais l'ancienne

Merci de m'éclairer de vos lumières !
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Dernière intervention
22 août 2014
21
3
Merci
Bonjour
Par exemple :

Private Sub Command1_Click()
 MSFlexGrid1.Row = 6
 MSFlexGrid1.RowSel = 7
 MsgBox "regarde"
 MSFlexGrid1.Row = 5
 MSFlexGrid1.RowSel = 6
 MsgBox "regarde maintenant"
End Sub

Dire « Merci » 3

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

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

Commenter la réponse de jmfmarques
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
16
0
Merci
Salut JMF, je te trouve pas mal zen ...

MPi²
Commenter la réponse de cs_MPi
Messages postés
49
Date d'inscription
mercredi 8 novembre 2000
Dernière intervention
24 mars 2010
0
Merci
Salut et merci beaucoup jmf.

Pourquoi tu le trouve pas mal zen MPi ? J'ai mal expliqué ?
Commenter la réponse de cs_Axen
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
16
0
Merci
Salut Axen,
non, rien à voir avec ton explication ... qui, comme la réponse de JMF, étaient claires.
désolé pour l'intrusion.

MPi²
Commenter la réponse de cs_MPi

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.