Einzelnen Beitrag anzeigen

Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: [FMX] eigene Komponente (Aufbau & Performance)

  Alt 9. Nov 2016, 16:50
Wenn Du viele eigene Controls erstellst (ähnlich Panel), die sich selbst zeichnen, dann musst Du FMX vertrauen, dass es die Neuzeichenaktionen sinnvoll veranlasst.

Bei meinen frühen Versuchen mit XE3 habe ich da allerdings regelrechte Neuzeichnen-Orgien festgestellt. Jede Änderung wurde MINDESTENS 3 mal neu gezeichnet und es wurden bei jeder Aktionen auch jede Menge abhängige Controls auch wieder neu gezeichnet.
Also da es Dir auf Performance ankommt würde ich an Deiner Stelle

-> ein großes Control erstellen, das eine Zeichenfläche und eine (auch selbst gezeichnete) Scrollbar enthält.

Dann platzierst Du virtuell mehrere Sichten für auf Deine Daten-Objekte und lässt diese sich in ihren Bereich zeichnen.
Klickt der User in den Bereich der Komponente, wo die Scrollbar gemalt ist, berechnest Du einen neuen sichtbaren Bereich, malst den Slider an die neue Position und lässt jetzt die Controls 100-120 aus den insgesamt 500 Datenobjekten in die Zeichenfläche malen.

Das macht mehr Aufwand, aber so kannst Du es m.E. am besten optimieren.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat