Le Soldat Inconnu a écrit :moi, j'aimerais bien avoir un évènement qui indique si on a coché ou décoché une ligne
car actuellement, impossible de savoir si on a coché ou décocher une ligne et en plus, on ne sait pas quel sur quel ligne on a agit.
Régis, tu ne regarde pas mes codes
J'ai mis sur mon site (car la taille est trop grande pour le forum) un code pour supprimer les adresses de la liste des URL de IE
La structure *lpnmia.NMLISTVIEW = lParam permet de récupérer les infos sur l'élément.
Faute d'une commande directe, le code fonctionne bien. En utilisant ma librairie, commande
SelectListiconCheckBox(), on peut cocher/décocher toutes les cases facilement
message ici
http://purebasic.hmt-forum.com/viewtopic.php?t=1530
il y a le lien correspondant à mon code dans le message
Dans la callback, j'intercepte les événement de cochage/décochage
Code : Tout sélectionner
Case #WM_NOTIFY ; pour intercepter les événements des ListiconGadget
; détecte le click simple sur la boite à cocher
; deux cas la valeur retournée vaut :
*lpnmia.NMLISTVIEW = lParam
Select *lpnmia\hdr\code
Case #LVN_ITEMCHANGED
If * lpnmia\uNewState = 4096 ; l'élément vient d'être décoché
If ListIconAfficher = #Listicon
; on affiche la ligne en noir, police systeme
SetRowColor(#Listicon, *lpnmia\iItem, #black, RGB(255, 255, 223), 0)
Else
SetItemColor(#Listicon_import, *lpnmia\iItem, 0, #black, RGB($DB, $ED, $DC), 0)
EndIf
UpdateMyStatusBar()
ElseIf * lpnmia\uNewState = 8192 ; l'élément vient d'être coché
If ListIconAfficher = #Listicon
; on affiche la ligne correspondante en noir, police grasse, le fond des lignes plus foncé
SetRowColor(#Listicon, *lpnmia\iItem, #black, RGB(208, 208, 176), font)
Else
SetItemColor(#Listicon_import, *lpnmia\iItem, 0, #black, RGB($DB - $2F, $ED - $2F, $DC - $2F), font)
EndIf
UpdateMyStatusBar()
EndIf
EndSelect