Changer l'image d'un ListIcon
Publié : mer. 24/août/2005 15:40
Tout est dans le titre, il me semblai que j'avais lu qq chose dessus, mais impossible de retrouver ! 

Forums PureBasic - Français
http://forums.purebasic.com/french/
Code : Tout sélectionner
Enumeration
#MainWindow
#ListIconGadget1
#ButtonGadget
#ButtonGadget2
#Font
EndEnumeration
; ;========================================================================================
; ;========================================================================================
If OpenWindow(#MainWindow, 0, 0, 360, 300, #PB_Window_ScreenCentered | #PB_Window_SystemMenu, "")
If CreateGadgetList(WindowID()) And ListIconGadget(#ListIconGadget1, 5, 50, 350, 240, "Colonne 1", 320 / 3, #PB_ListIcon_MultiSelect)
AddGadgetColumn(#ListIconGadget1, 1, "Colonne 2", 300 / 3)
ButtonGadget(#ButtonGadget, 15, 10, 335, 35, "Changer l'image ligne 3")
CreateImage(600, 16,16) ; image affichée pour toutes les lignes
If StartDrawing(ImageOutput())
Box(4, 4, 8, 8 , #Blue)
StopDrawing()
EndIf
CreateImage(601,16,16) ; image qui sera affichée ligne 3
If StartDrawing(ImageOutput())
Box(4, 4, 8, 8 , #Red)
StopDrawing()
EndIf
For i.b = 1 To 15
If i <> 3
AddGadgetItem(#ListIconGadget1, -1, "111" + Chr(10) + "222" , UseImage(600))
Else
AddGadgetItem(#ListIconGadget1, -1, "Ligne 3 col 1" + Chr(10) + "Ligne 3 col 2" , UseImage(600))
EndIf
Next i
Repeat
Select WaitWindowEvent()
Case #PB_EventGadget
event = EventGadgetID()
If event = #ButtonGadget
; item est le numéro de ligne
Item = 2 ; ligne 3
Text1.s = GetGadgetItemText(#ListIconGadget1, Item, 0) ; colonne 0
Text2.s = GetGadgetItemText(#ListIconGadget1, Item, 1) ; colonne 1, etc
RemoveGadgetItem(#ListIconGadget1, Item)
AddGadgetItem(#ListIconGadget1, Item, Text1+Chr(10)+Text2.s, UseImage(601))
EndIf
Case #PB_EventCloseWindow
Quit + 1
EndSelect
Until Quit
EndIf
EndIf
End