Seite 1 von 1
ListIcon ScrollState ?
Verfasst: 04.06.2014 11:46
von es_91
Hi.
Ich möchte ein ListIconGadget mit vielen Datensätzen aus einer Datenbank füllen. Es können aber nicht alle Daten sofort abgefragt und angezeigt werden, stattdessen gibt es einen Thread, der die Datensätze abruft und das ListIconGadget soll zuerst nur die ersten 50 Datensätze anzeigen (nachdem diese von dem Thread abgefragt wurden) und später den Rest anzeigen. Der Rest soll genau dann in 50-Datensätzen-Schritten angezeigt werden, wenn der Benutzer beim ListIconGadget über dreiviertel der Höhe herunterscrollt. Das heißt, das Scrollen nach unten soll das weitere Befüllen des ListIconGadgets triggern.
Mit welcher Funktion, gerne auch API, kann ich den "ScrollState" des Gadgets abfragen?
Schöne Grüße,
es_91.
Re: ListIcon ScrollState ?
Verfasst: 04.06.2014 11:54
von Kiffi
es_91 hat geschrieben:Mit welcher Funktion, gerne auch API, kann ich den "ScrollState" des Gadgets abfragen?
Position der Scrollbar in einem ListIconGadget ermitteln:
http://www.purebasic.fr/german/viewtopi ... =3&t=27911
Grüße ... Kiffi
Re: ListIcon ScrollState ?
Verfasst: 04.06.2014 11:57
von Bisonte
Was hindert dich daran, das ListIconGadget komplett zu befüllen, wenn die Daten vorliegen ?
Meines Wissens gibt das sehr unschöne Effekte. Wenn ein ListIcon Stück für Stück "befüllt" wird, während der User
es sieht oder gar darin herumfuhrwerkt, springt es immer wieder an den ersten Eintrag zurück, den man dann wieder
korrigieren muss. Es ist also ein böses "Gezuckel".
Es schwirrt hier im Forum ein Snippet herum, mit dem man das neuzeichnen eines ListIcons unter Windows unterbinden kann.
Damit ist es möglich, das Gadget viel schneller zu befüllen. Also meines Erachtens erst befüllen wenn alle Daten da sind.
Eventuell dem Benutzer ein kleines Fenster mit Fortschrittsbalken präsentieren, in dem mitgeteilt wird, das gerade etwas
heftig viel zu tun ist... So als Vorschlag.
Re: ListIcon ScrollState ?
Verfasst: 04.06.2014 12:04
von RSBasic
Bisonte hat geschrieben:Es schwirrt hier im Forum ein Snippet herum, mit dem man das neuzeichnen eines ListIcons unter Windows unterbinden kann.
http://www.rsbasic.de/aktualisierung/wi ... 3%BCgen.pb
Bisonte hat geschrieben:Meines Wissens gibt das sehr unschöne Effekte. Wenn ein ListIcon Stück für Stück "befüllt" wird, während der User
es sieht oder gar darin herumfuhrwerkt, springt es immer wieder an den ersten Eintrag zurück, den man dann wieder
korrigieren muss. Es ist also ein böses "Gezuckel".
Eigentlich nicht:
Code: Alles auswählen
EnableExplicit
Define EventID
If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ListIconGadget(1, 0, 0, WindowWidth(0), WindowHeight(0), "", WindowWidth(0)-30, 0)
AddWindowTimer(0, 123, 100)
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Timer And EventTimer() = 123
AddGadgetItem(1, -1, "Item " + Random(999), 0, 0)
EndIf
If EventID = #PB_Event_CloseWindow
End
EndIf
ForEver
EndIf
Weder die Scrollposition noch die Markierung ändert sich.
Re: ListIcon ScrollState ?
Verfasst: 04.06.2014 12:53
von es_91
RSBasic hat geschrieben:Mit:
Danke, Kiffi und Dank an RSBasic. Zu dem was Bisonte gesagt hat, schreibe ich später noch was.