Page 1 sur 1
[..] Recuperer couleur text lisview
Posté : jeu. 17 juil. 2014 12:24
par Champy69
Bonjour a tous,
J'ai un problème et je n'arrive pas a m'en sortir!
En effet, je cherche à récupérer la couleur du texte de l'item dans une listview
Avez vous une idée?
Historique :
Je traite chaque item pour changer la couleur du texte selon certains critères ( grâce a la fonction guictrlsetcolor avant affichage) mais quand je clique sur un autre item, la couleur disparaît avec la dé-sélection de l'item coloré
Je veux donc récupérer la couleur a chaque click et la réattribuer après (grâce a wm_Notify)
Merci d'avance
Re: [..] Recuperer couleur text lisview
Posté : jeu. 17 juil. 2014 14:14
par mikell
Oui, quand tu cliques dans ta listview l'item est 'repeint' donc le guictrlsetcolor ne sert à rien
C'est dans le wm_notify qu'il te faut directement attribuer les couleurs aux items selon les critères voulus
Re: [..] Recuperer couleur text lisview
Posté : jeu. 17 juil. 2014 18:34
par Champy69
Je test ça et vous donne des nouvelles
merci
Re: [..] Recuperer couleur text lisview
Posté : ven. 25 juil. 2014 14:44
par Champy69
Bonjour Mikell,
J'ai testé d'assigner les couleurs dans le Wm_Notify sans les assigner autres parts
mais la couleur reste noir sur les lignes choisies
Je change les couleur de cette sorte :
Code : Tout sélectionner
For $d = 2 To $GunLibre[0] ;Boucle de tous les appareils
GUICtrlCreateListViewItem($GunLibre[$d],$ListGunLibre) ;creation des item de ma list view
For $for4 = 2 to $GunPreterForColor[0] ;Boucle secondaire pour verif si l'appareil est un appareil assigné en couleur ou pas
If $GunLibre[$d] = $GunPreterForColor[$for4] Then ; si appareil = Appareils asigné rouge donc changement couleur
$tmp = GUICtrlSetColor($ListGunLibre,0xFF0000)
ExitLoop
Else
GUICtrlSetColor($ListGunLibre,0x000000) ;sinon noir
EndIf
Next
Next
C'est peut-être la mon probleme !
Re: [..] Recuperer couleur text lisview
Posté : ven. 25 juil. 2014 19:59
par mikell
Hum j'ai dû mal comprendre la question au départ, doit y avoir un autre souci parce que normalement la couleur "tient"
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
GUICreate("Form1", 537, 241, 284, 165)
$LV = GUICtrlCreateListView("col1 |col2 ", 8, 12, 461, 214)
For $i = 0 To 9
GUICtrlCreateListViewItem("item "& $i & "|" & "subitem "& $i, $LV)
If Mod($i, 2) = 0 Then GUICtrlSetColor(-1, 0xff0000)
Next
GUISetState()
While 1
If GUIGetMsg() = $GUI_EVENT_CLOSE Then Exit
WEnd