Code: Select all
Global Window_0, ListView_0, Button_1, Button_2, Button_3, Button_4, Button_5
Procedure OpenWindow_0(x = 0, y = 0, width = 560, height = 380)
Window_0 = OpenWindow(#PB_Any, x, y, width, height, "ListView Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ListView_0 = ListViewGadget(#PB_Any, 10, 10, 370, 360)
Button_1 = ButtonGadget(#PB_Any, 410, 30, 120, 40, "Up")
Button_2 = ButtonGadget(#PB_Any, 410, 100, 120, 40, "Down")
Button_3 = ButtonGadget(#PB_Any, 410, 170, 120, 40, "Add")
Button_4 = ButtonGadget(#PB_Any, 410, 240, 120, 40, "Delete")
Button_5 = ButtonGadget(#PB_Any, 410, 310, 120, 40, "Clear")
EndProcedure
Procedure PopulateListview()
Directory$ = "C:\Windows\"
If ExamineDirectory(0, Directory$, "*.*")
While NextDirectoryEntry(0)
If DirectoryEntryType(0) = #PB_DirectoryEntry_File
AddGadgetItem(ListView_0, 0, DirectoryEntryName(0))
EndIf
Wend
FinishDirectory(0)
EndIf
EndProcedure
; Main ==========================================================================================================
OpenWindow_0()
PopulateListView()
Repeat
Event = WaitWindowEvent()
If Event = #PB_Event_Gadget
Select EventGadget()
Case Button_4
Index = GetGadgetState(ListView_0)
If Not Index = -1
RemoveGadgetItem(ListView_0, Index)
EndIf
Case Button_5
ClearGadgetItems(ListView_0)
EndSelect
EndIf
Until Event = #PB_Event_CloseWindow