Code: Select all
If OpenWindow(0, 216, 0, 602, 302, "PureLVSORT Test", #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered)
ListIconGadget(0, 5, 5, 590, 285, "String", 110)
AddGadgetColumn(0, 1, "Numeric", 110)
AddGadgetColumn(0, 2, "Float", 110)
AddGadgetColumn(0, 3, "DateDDMMYYYY", 120)
AddGadgetColumn(0, 4, "DateMMDDYYYY", 120)
For i=1 To 500
AddGadgetItem(0, -1, "ABCDE" + Chr(10) + "514" + Chr(10) + "0.9" + Chr(10) + "31/12/2004" + Chr(10) + "12/31/2004")
Next
EndIf
Global start0=ElapsedMilliseconds()
Procedure test(x)
n=CountGadgetItems(0)-1
For i=0 To n
For j=0 To 4
out$+GetGadgetItemText(0,i,0)+#TAB$
Next
out$+GetGadgetItemText(0,i,0)+#CRLF$
start1=ElapsedMilliseconds()
Debug start1-start0
start0=start1
Next
Debug Len(out$)
EndProcedure
Repeat
Event = WaitWindowEvent()
If event=#PB_Event_Gadget ; just click
; test(0) ; 100x faster!
t=CreateThread(@test(),0)
While IsThread(t)
ev=WindowEvent() ; if this is removed thread doesn't work at all
If Not ev: Delay(10) : EndIf
Wend
EndIf
Until Event = #PB_Event_CloseWindow
PB 4.31/XP