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

cs_Axen 49 Messages postés mercredi 8 novembre 2000Date d'inscription 24 mars 2010 Dernière intervention - 23 oct. 2007 à 17:42 - Dernière réponse : cs_MPi 3875 Messages postés mardi 19 mars 2002Date d'inscription 17 août 2018 Dernière intervention
- 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
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 23 oct. 2007 à 18:11
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

Merci jmfmarques 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 68 internautes ce mois-ci

Commenter la réponse de jmfmarques
cs_MPi 3875 Messages postés mardi 19 mars 2002Date d'inscription 17 août 2018 Dernière intervention - 24 oct. 2007 à 03:07
0
Merci
Salut JMF, je te trouve pas mal zen ...

MPi²
Commenter la réponse de cs_MPi
cs_Axen 49 Messages postés mercredi 8 novembre 2000Date d'inscription 24 mars 2010 Dernière intervention - 24 oct. 2007 à 10:06
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
cs_MPi 3875 Messages postés mardi 19 mars 2002Date d'inscription 17 août 2018 Dernière intervention - 24 oct. 2007 à 11:36
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.