Daffy0815 hat geschrieben:Aber mal interessehalber: Wie würde denn die WinAPI-Lösung zum temporären Aussetzen des Neuzeichnens aussehen?
Code: Alles auswählen
SendMessage_(GadgetID(#Gadget), #WM_SETREDRAW, state, 0)state = 1 = Wieder einschalten
Aber wie Regenduft schon bereits richtig gesagt hat, kann man das auch mit HideGadget() machen:
Code: Alles auswählen
EnableExplicit
Define EventID
Define a
Define StartTime
Define ElapsedTime
If OpenWindow(0,0,0,500,400,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
ListIconGadget(1,10,10,480,380,"",400,0)
;SendMessage_(GadgetID(1),#WM_SETREDRAW,0,0)
HideGadget(1,1)
StartTime = ElapsedMilliseconds()
For a=1 To 10000
AddGadgetItem(1,-1,"Item "+Str(a),0,0)
Next
;SendMessage_(GadgetID(1),#WM_SETREDRAW,1,0)
HideGadget(1,0)
ElapsedTime = ElapsedMilliseconds()-StartTime
Debug Str(ElapsedTime)+" ms."
Repeat
EventID=WaitWindowEvent()
If EventID = #PB_Event_CloseWindow
End
EndIf
ForEver
EndIf
