Ce n'est peut-être pas vraiment ce que tu cherches mais cela devrait quand même te donner des pistes.
Ce n'est pas un exemple fonctionnel, mais deux méthodes d'utilisation, l'une pour rechercher un élément dans une listicon et l'autre pour modifier un élément dans la listicon. A adapter en fonction de ce que tu veux.
;Recherche d'un élément dans une ListIcon, dans n'importe quelle colonne.
;Tu colle cette procédure avant ta fenêtre en la modifiant en fonction de ton code
;l'item correspondant à la recherche sera sélectionné si trouvé.
Procedure FindStringList(searchString.s,NbColumns) ;Procédure de Chris
For Colonne = 0 To NbColumns -1
For Ligne = 0 To CountGadgetItems ( #ListIcon )
If GetGadgetItemText ( #ListIcon ,Ligne,Colonne) = searchString
SetGadgetItemState ( #ListIcon ,Ligne, #PB_ListIcon_Selected )
SendMessage_ ( GadgetID ( #ListIcon ), #LVM_ENSUREVISIBLE ,Ligne, #True )
Break 2
EndIf
Next
Next
If GetGadgetItemText ( #ListIcon ,Ligne,Colonne) <> searchString
MessageRequester ( "RECHERCHE INFRUCTUEUSE" , "ELEMENT INCONNU" + Chr (13)+ "Vous devriez recommencer avec un autre élément" , #MB_ICONEXCLAMATION )
EndIf
EndProcedure
;Dans ta boucle tu lance la recherche ainsi ( 7 correspond au nombre de colonnes de la listicon.)
Case #btn_SearchInListicon : FindStringList( GetGadgetText ( #String_search ),7) ; #String_search correspond à un StringGadget() de saisie de la recherche
;-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
;Pour sélectionner la colonne où tu veux modifier un élément tu utilises une ComboBox répertoriant les noms
;de tes colonnes de listicon. Il faut qu'ils soient identiques (sensibles à la casse)
;exemple : dans ta fenêtre....
ComboBoxGadget ( #SelectColonne , 0, 142, 130, 120) ;,#PB_ComboBox_Editable)
AddGadgetItem ( #SelectColonne , -1, "Nom" )
AddGadgetItem ( #SelectColonne , -1, "Prénom" )
AddGadgetItem ( #SelectColonne , -1, "Adresse" )
AddGadgetItem ( #SelectColonne , -1, "e-mail" )
AddGadgetItem ( #SelectColonne , -1, "Téléphone" )
AddGadgetItem ( #SelectColonne , -1, "Âge" )
AddGadgetItem ( #SelectColonne , -1, "Sexe" )
AddGadgetItem ( #SelectColonne , -1, "Planète" )
; dans ta boucle...
;Une fois que tu as sélectionné une colonne
;Un clic droit sur l'élément à modifier.
Case #ListIcon
Resultat$ = GetGadgetText ( #SelectColonne )
If Resultat$ = "Nom" : Colonne=0
ElseIf Resultat$= "Prénom" : Colonne=1
ElseIf Resultat$= "Adresse" : Colonne=2
ElseIf Resultat$= "e-mail" : Colonne=3
ElseIf Resultat$= "Téléphone" : Colonne=4
ElseIf Resultat$= "Âge" : Colonne=5
ElseIf Resultat$= "Sexe" : Colonne=6
ElseIf Resultat$= "Planète" : Colonne=7
EndIf
Pos = GetGadgetState ( #ListIcon )
If Pos >= 0
If EventType () = #PB_EventType_RightClick
Txt.s = InputRequester ( "MODIFICATION D'UN ELEMENT" , "Entrez vos modifications :" , GetGadgetItemText ( #ListIcon , Pos, Colonne))
SetGadgetItemText ( #ListIcon , Pos, Txt, Colonne)
EndIf
EndIf