TLabel/TStaticLabel flackern vermeiden?



  • Hey,

    ich habe 48 Labels die ich alle ca. 100ms aktualisieren muss. Diese geben Messdaten aus und flackern leider teils zu stark. Zum Test habe ich eine Form erstellt mit einem TPanel und darin jeweils 24 TLabel und 24 TStaticLabel, welche über einem Timer gleichzeitig deren Inhalt um +1 hochgezählt werden.

    TStaticLabel flackern ebenfalls, nur um Gegensatz zu TLabel nicht gleichzeitig, sondern jedes für sich vereinzelt. Ich habe den Container (TPanel) auch auf DoubleBuffered gesetzt, wodurch die TLabel noch stärker flackern, bei den TStaticLabel änderte sich aber nichts.

    Gibt es noch eine Möglichkeit schnell ändernde Daten anzuzeigen, ohne das Flackern? Nutze noch Rad Studio 2009.

    Würde mich sehr über Lösungsvorschläge freuen. Danke! 🙂



  • Ändern sich die Werte denn? Im ersten Ansatz kannst du ja nur die Labels aktualisieren, deren Werte sich geändert haben und die anderen nicht anfassen.



  • Setz auch mal DoubleBuffered der Form, in der das TPanel liegt, auf true.



  • @DocShoe
    Es ändern sich fast alle Labels bei der Berechnung, daher bringt diese Optimierung leider nichts.

    @Burkhi
    Das ist bereits gesetzt und ändert daran nichts.



  • Vlt. hilft dir das weiter:

    http://www.delphipraxis.net/22027-canvas-flackern-verhindern.html

    Edit: Ansonsten sehe ich aber auch ein kleines Designproblem: Es sollen laut deiner Aussage alle 100ms 48 Messwerte auf dem Bildschirm ausgegeben werden, die sich auch ständig ändern, ich frage mich da ernsthaft, wer in der Lage ist, 10 mal pro Sekunde 48 Messwerte zu analysieren.



  • Gibt´s Neuigkeiten?


Log in to reply