AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Objekt (TSeries) kopieren

Ein Thema von messie · begonnen am 3. Mai 2007 · letzter Beitrag vom 4. Mai 2007
Antwort Antwort
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#1

Objekt (TSeries) kopieren

  Alt 3. Mai 2007, 09:54
Moin,

ich habe einen Chart mit einer TLineSeries. Um die Position eines Punktes zu bestimmen, brauche ich den direkten Zugriff auf ein TSeries-Objekt den ich nicht habe.
Wenn ich mit
Delphi-Quellcode:
var
  dummy : TLineSeries;
begin
  dummy := TLineSeries(Chart.Series[0]);
end;
zugreife, löse ich ja den Bezug auf, mit dem ich an anderer Stelle noch Werte anhängen will.
Wie kann ich das Ding kopieren? TLineSeries bietet zwar die Methode assign, die kopiert aber nicht die Datenpunkte mit. Oder kann ich die Referenz trotz des Casts zurückgeben?

Grüße, Messie
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Objekt (TSeries) kopieren

  Alt 3. Mai 2007, 10:00
Was willst du?

Der pointer dummy zeigt jetzt genau auf deinen Graphen, wenn du jetzt dummy.addxy(x,y) machst wird diese Linie verlängert. Genauso kannst du darin auch lesen.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Objekt (TSeries) kopieren

  Alt 3. Mai 2007, 10:10
Zitat von sirius:
Der pointer dummy zeigt jetzt genau auf deinen Graphen, wenn du jetzt dummy.addxy(x,y) machst wird diese Linie verlängert. Genauso kannst du darin auch lesen.
Klar, nur die TSeries heißt in einer anderen Unit anders (z.B. Series1) und wird dort mit Series1.Addxy gefüttert. Deshalb möchte ich eine Kopie erstellen oder die Referenz zurückgeben wobei die Kopie sinnvoller wäre.

Grüße, Messie
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Objekt (TSeries) kopieren

  Alt 3. Mai 2007, 10:16
Du löst keinen Bezug auf.

Du kannst jetzt mit dummy Werte auslesen und später in einer anderen Unit weiter Werte addieren. Ich verstehe das Problem noch nicht.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Objekt (TSeries) kopieren

  Alt 3. Mai 2007, 11:38
Zitat von sirius:
(...)später in einer anderen Unit weiter Werte addieren. Ich verstehe das Problem noch nicht.
eben nicht später Werte addieren sondern währenddessen in einem anderen Thread Daten schreiben, egal was der User im HauptThread macht (geht hier ums Auswerten/Exportieren/Drucken). Da wollte ich zu einem sicheren Zeitpunkt eine Kopie des Istzustands erzeugen, damit der Nutzer die Daten frei zur Verfügung hat und das Schreiben im anderen Thread weitergeht. So hoffte ich, mir die Synchronisation zu ersparen.

Grüße, Messie
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Objekt (TSeries) kopieren

  Alt 4. Mai 2007, 11:59
Ach, du bist bei mehreren Threads?
Und du schreibst parrallel und liest auch gleichzeitig aus?

Ich würde dann mal schauen ob das auslesen eines Wertes in einer , unter synchronize, aufgerufenen Prozedur funktioniert.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#7

Re: Objekt (TSeries) kopieren

  Alt 4. Mai 2007, 13:25
Zitat von sirius:
Ich würde dann mal schauen ob das auslesen eines Wertes in einer , unter synchronize, aufgerufenen Prozedur funktioniert.
Mir wäre es trotzdem wichtig, daß ich das TChart-Objekt kopieren kann. Denn der User soll damit arbeiten können, mit dem ChartEditor spielen etc. Und wenn ich da jeden Zugriff mit der Datenerfassung synchronisieren müßte, wäre ich selbsmordgefährdet. Zumal ich die Quellen von TeeChart nicht habe.

Grüße, Messie
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: Objekt (TSeries) kopieren

  Alt 4. Mai 2007, 13:39
Hallo,

unabhängige Arbeitskopien von TChart erzeugst du mit Assign(). Bei Serien verwendest du für diesen Zweck CloneChartSeries() aus der Unit Chart.

Noch ein Thread zu diesem Thema: chart serie zur laufzeit erstellen

Grüße vom marabu
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz