SetGadgetItemData()
Syntax
SetGadgetItemData(#Gadget, Item, Value)Description
Stores the given value with the specified #Gadget item. This value can later be read with the GetGadgetItemData() command. This allows to associate a custom value with the items of a gadget. This value will remain with the item, even if the item changes its index (for example because other items were deleted).
This command works with the following gadgets:
- ComboBoxGadget()
- ListIconGadget()
- ListViewGadget()
- TreeGadget()
Example:; This code uses SetGadgetItemData to store the original position ; of each item to later know it, even if the items index changed. ; If OpenWindow(0, 0, 0, 280, 250, "SetGadgetItemData", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0)) ButtonGadget(0, 10, 10, 80, 20, "Add") ButtonGadget(1, 100, 10, 80, 20, "Remove") ButtonGadget(2, 190, 10, 80, 20, "Test") ListViewGadget(3, 10, 40, 260, 200) For i = 0 To 10 AddGadgetItem(3, i, "Old Item "+Str(i)) SetGadgetItemData(3, i, i) Next i Repeat Event = WaitWindowEvent() If Event = #PB_Event_Gadget item = GetGadgetState(3) Select EventGadget() Case 0 ; Add AddGadgetItem(3, item, "New Item") If item <> -1 SetGadgetItemData(3, item, -1) Else SetGadgetItemData(3, CountGadgetItems(3)-1, -1) EndIf Case 1 ; Remove If item <> -1 RemoveGadgetItem(3, item) EndIf Case 2 ; Test If item <> -1 value = GetGadgetItemData(3, item) If value = -1 MessageRequester("", "Its a new item.") Else MessageRequester("", "It was item number "+Str(value)) EndIf EndIf EndSelect EndIf Until Event = #PB_Event_CloseWindow EndIf
Supported OS
All