Tabelle / ListIconGadget

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Tabelle / ListIconGadget

Beitrag von RSBasic »

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 = 0 = Abschalten
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
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Antworten