Aide et conseils concernant AutoIt et ses outils.
Cengokill
Niveau 2
Messages : 18 Enregistré le : ven. 07 août 2020 18:47
Status :
Hors ligne
#1
Message
par Cengokill » dim. 30 août 2020 14:28
Bonjour à tous, j'aimerais pouvoir trier une ListView en cliquant sur la colonne à trier. J'ai fais des recherches, et visiblement la fonction _GUICtrlListView_SimpleSort() ressort souvent, mais cette fonction semble trier une ListView à sa création (je l'ai testée et ça fonctionne).
J'ai découvert la fonction GUICtrlRegisterListViewSort(), mais très sincèrement en voyant les exemples, je n'ai pas compris comment l'utiliser, et ce qui la différencie de _GUICtrlListView_SimpleSort().
Sauriez-vous comment m'aider ?
Merci d'avance !
Opt ( "GUIOnEventMode" , 1 ) $Form1 = GUICreate ( "ListView tri" , 700 , 627 , 500 , 450 ) GUISetOnEvent ( $GUI_EVENT_CLOSE , "Form1Close" ) $idListview = GUICtrlCreateListView ( "colonne 1|colonne2|colonne 3" , 50 , 75 , 601 , 510 ) GUICtrlCreateListViewItem ( "a|c|b" , $idListview ) GUICtrlCreateListViewItem ( "b|a|d" , $idListview ) GUICtrlCreateListViewItem ( "c|b|c" , $idListview ) GUICtrlCreateListViewItem ( "d|d|a" , $idListview ) GUISetState ( @SW_SHOW ) While 1 Sleep ( 100 ) WEnd Func Form1Close
( ) Exit EndFunc
_____ Cengokill ______
mikell
Spammer !
Messages : 6292 Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status :
Hors ligne
#2
Message
par mikell » dim. 30 août 2020 17:14
On peut utiliser _GUICtrlListView_SimpleSort() en cours de script, c'est pas bien compliqué
#include <GuiListView.au3> $Form1 = GUICreate ( "ListView tri" , 700 , 627 , 500 , 450 ) $idListview = GUICtrlCreateListView ( "colonne 1|colonne2|colonne 3" , 50 , 75 , 601 , 510 ) GUICtrlCreateListViewItem ( "a|c|b" , $idListview ) GUICtrlCreateListViewItem ( "b|a|d" , $idListview ) GUICtrlCreateListViewItem ( "c|b|c" , $idListview ) GUICtrlCreateListViewItem ( "d|d|a" , $idListview ) GUISetState ( ) Global $a_sort = [ False , False , False ] $hListview = GUICtrlGetHandle ( $idListview ) While 1 $msg = GuiGetMsg ( ) Switch $msg Case - 3 ;$GUI_EVENT_CLOSE Exit Case $idListview $col = GUICtrlGetState ( $idListview ) _GUICtrlListView_SimpleSort ( $hListview , $a_sort , $col ) EndSwitch WEnd
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Cengokill
Niveau 2
Messages : 18 Enregistré le : ven. 07 août 2020 18:47
Status :
Hors ligne
#3
Message
par Cengokill » dim. 30 août 2020 21:45
Oui, merci, mais comment je fais pour le mode évènement ?
_____ Cengokill ______
mikell
Spammer !
Messages : 6292 Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status :
Hors ligne
#4
Message
par mikell » lun. 31 août 2020 12:20
Franchement...................
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Cengokill
Niveau 2
Messages : 18 Enregistré le : ven. 07 août 2020 18:47
Status :
Hors ligne
#5
Message
par Cengokill » mar. 01 sept. 2020 09:12
Merci. Oui bah désolé, je débute sur autoit, et je ne savais même pas que l'on pouvait faire
Le principe de publier sur ce forum c'est d'apprendre ce que l'on ne sait pas...
_____ Cengokill ______
mikell
Spammer !
Messages : 6292 Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status :
Hors ligne
#6
Message
par mikell » mar. 01 sept. 2020 13:57
Certes. Mais comme dans ton code du post #1 tu utilisais GUISetOnEvent, je me suis dit que forcément tu avais lu la page correspondante dans l'aide, y compris bien sûr le script d'exemple de cette page qui mentionne 2 fois GUICtrlSetOnEvent et son usage
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )