Announcement

Collapse
No announcement yet.

TChart series Messpunkte löschen und dann neue anfügen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TChart series Messpunkte löschen und dann neue anfügen

    Ich habe ein Chart mit einer Series.Nun werden Daten alle 2-3min eingelesen und dann angefügt.Da das Programm ständig läuft(Wetterstation)
    werden die Messdaten unübersichtlich.Nun möchte ich wenn 1500 Messpunkte
    geschrieben wurden den ersten,also ältesten löschen und den neusten hinten anfügen.
    Beispiel:
    begin
    DecimalSeparator:=',';
    StatusBar1.Panels[2].Text :=FloatToStr(Chart1.MaxXValue(Chart1.BottomAxis));
    If Chart1.MaxXValue(Chart1.BottomAxis) > 1500) then
    begin
    Series1.Delete(0);
    Series1.Add(StrToFloat(Temp),M_Time, ClLime); //Temp
    end
    else
    Series1.Add(StrToFloat(Temp),M_Time, ClLime); //Temp

    Nun habe ich festgestellt das er den ältesten Messpunkt löscht,aber es werden keine neuen hinten angefügt sondern der schreibt immer an der 1500 Messstelle und überschreibt diese immer und immer.
    Die Demo aus delphi UScroll hat mir nicht geholfen bzw. ich habe sie nicht verstanden.
    Danke im vorraus.

  • #2
    Hallo Wolfgang,

    der Wert (0) wird schon gelöscht, aber es müssen die anderen Werte auch um 1 "nach hinten" geschoben werden.
    Also Wert(1) auf (0), Wert(2) auf (1) usw.
    Vielleicht wäre es besser die Messwerte in ein Array zu schreiben, und Dieses als Ringspeicher verwalten oder in einer Schleife durchschieben.

    Gruß
    Jens

    Comment

    Working...
    X