Listview et tri [Résolu]

Messages postés
351
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
6 octobre 2010
- - Dernière réponse : cs_Sator
Messages postés
351
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
6 octobre 2010
- 6 juil. 2009 à 20:17
Hello voici mon soucis: j'ai un listview
mon premier champ est "N°" mais si je fais :

dans un bouton call view1_ColumnClick("N°") ben il me répond que le type est incompatible...
si je mets un debug.print ColumnHeader il me répond N°

donc pour une question graphique, je reporte dans des label(s), ma listview... et dans des boutons j'essaie de remettre ma listview dans l'ordre qui va se reporter dans les label en question... bref je sais pas si c'est très clair... mais bon....

si quelqu'un sait comment faire je le remercie d'avance....

:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
5 avril 2013
3
3
Merci
Mais si tu ne gères pas au click du columnheader mais depuis un bouton, il suffit de désigner l'index !!!

exemple :

Private Sub Command4_Click()
   ListView1.SortOrder = lvwAscending
   ListView1.SortKey = 2
   ListView1.Sorted = True
End Sub

Dire « Merci » 3

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

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

Commenter la réponse de jmf0
Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
5 avril 2013
3
0
Merci
Bonjour,

et où as-tu vu une telle syntaxe ?

Une columnheader possède une propriété index, à utiliser ...

Ceci devrait déclencher un déclic chez toi et te permettre de déterminer ton appel :

Private Sub ListView1_ColumnClick(ByVal ColumnHeader As ComctlLib.ColumnHeader)
   MsgBox ColumnHeader.Index
   ListView1.SortOrder = lvwAscending
   ListView1.SortKey = ColumnHeader.Index - 1
   ListView1.Sorted = True
End Sub

Je préfère par ailleurs m'abstenir de commenter ta manoeuvre (utiliser des labels pour y reporter ce que contient déjà la listview !!!)
Commenter la réponse de jmf0
Messages postés
351
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
6 octobre 2010
0
Merci
hello merci pour ta réponse mais j'ai ça au départ..
Code récupéré....
Private Sub view1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
    m_blnDirection(ColumnHeader.Index) = Not m_blnDirection(ColumnHeader.Index)
    'MsgBox "-" & ColumnHeader & "-"
    Select Case ColumnHeader.Index
    Case 1
        SortListView View1, ColumnHeader.Index, ldtNumber, m_blnDirection(1)
        RAZTriage 1 ' <== ajout pour faire comme windows
    Case 2.... etc....
----------------------------------
mais en fait je l'emploie en arrière plan... de manière invisible donc j'aimerai gérer le columnclick par un (bouton) call view1_ColumnClick(.... et le byval ne coresspond pas...)
que je fasse call view1_ColumnClick("N°") ou view1_ColumnClick(1)
l'un ou l'autre ne va pas....

merci pour ton attention

:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
Commenter la réponse de cs_Sator
Messages postés
351
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
6 octobre 2010
0
Merci
Alors là je te remercie infiniment pour ta réponse.... 10/10 mais on peut pas mettre de note ici....

@+

:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
Commenter la réponse de cs_Sator