![]() |
VtChart?
Hi @ all!
ich weiss, ich frage euch löcher in den bauch :oops: habe folgendes problem: ich muss für eine statistik bestimmte vorgegebene punkte in ein diagramm einlesen... das diagramm hat im moment 12 spalen (januar - dezember) und geht in der y-achse von 0 bis 100 die werte stehen in einem memo! ausserdem habe ich noch eine PageControl... auf der einen seite steht das memo auf der anderen soll ins diagramm gezeichnet werden. (nur zur info, falls das probleme machen sollte) lange rede kurzer sinn: wie bekomme ich die 12 daten aus dem memo in das Diagramm (VtChart)? manuell kein problem... aber automatisch!? danke! chriss |
Muss es denn unbedingt VtChart sein? Für TChart könnte ich dir morgen was geben (bin kurz vorm Umkippen... *umkipp*..........................)!
Chris |
Na gut, frisch genährt bekommst du jetzt einfach mal eine Lösung für dein Problem mit einem TChart:
Delphi-Quellcode:
Vorher solltest du noch einige Einstellungen im OI vornehmen:
procedure TForm1.Button1Click(Sender: TObject); // Im OnClick-Ereignis von einem Button
var i: integer; begin for i:=0 to 11 do begin Chart1.Series[0].Add( IntToStr( Memo1.Lines[i] ) ); end; end;
Chris |
danke danke danke danke danke danke!!!! :coder:
|
ähm, zu früh gefreut hab ein kleines problem damit:
WO ist die komponente, die ich dafür benutzen kann?!?!? quelltext übertragen und beim starten folgenden fehler: Undefinierter Bezeichner: Chart1 Eingesetzte Komponenten:
Code:
in activeX kann ich folgende Komponenten zur Verfügung:
type
////------ VERWENDETE KOMPONENTEN -----------------------------------------\\\\ Tprog = class(TForm) //--- BUTTONS ---\\ Button1: TButton; Button3: TButton; Button4: TButton; //--- LABELS ---\\ Label1: TLabel; Label2: TLabel; Label5: TLabel; Label12: TLabel; //--- EDITS ---\\ zahl1: TEdit; zahl2: TEdit; //--- MENU ---\\ MainMenu1: TMainMenu; Datei1: TMenuItem; Neu1: TMenuItem; Beenden1: TMenuItem; Info1: TMenuItem; //--- SONSTIGES ---\\ OpenDialog1: TOpenDialog; info_memo: TMemo; Timer1: TTimer; Memo1: TMemo; PageControl1: TPageControl; Daten: TTabSheet; Diagramm: TTabSheet; zahl_memo: TMemo; VtChart1: TVtChart; Button2: TButton; ChartFx, VS Spell, F1Book, VtChart, Graph! Weiteres Problem: Das ganze MUSS in Delphi 4 programmiert werden! |
Nicht VtChart, sondern TChart!!!
Wo du diese Kompo findest, kann ich dir leider nich auswendig sagen, aber geh mal auf View -> Component List. Da gibst du dann TChart ein und dann solltest du die Komponente habe... Chris PS: Ich gebe keine Garantie dafür, dass TChart in D4 drin ist... |
das nächstgelegene wäre chartfx
|
Hi,
gut, dann ist TChart nicht in Delphi 4 enthalten. Ich kann dir leider keine Lösung für VtChart geben, da ich mit den ActiveX-Komponenten noch nie gearbeitet habe. Ggf., wenn das rechtlich erlaubt ist (Frage an alle anderen!), würde ich dir die VCL-Sources von TChart geben... TChart bringt auch mehr Vorteile als VtChart. Chris |
Zitat:
nein, also das nächste wäre echt tchartfx oder ich hab irgendein paket net drin |
Da ich immer noch in der Schule herumsitze, kann ich dir jetzt leider nicht sagen, wo das genau ist. Allerdings ist es in D6 drin (auch in der PE)...
Chris PS: Zum Thema Weitergabe von TChart-Source mache ich jetzt einen neuen Thread auf... [ guckst du hier: ![]() |
Frage: wie bekommst du unter Delphi 4 VtChart? Ich habe gerade gelesen, dass VtChart erst ab Delphi 6 dabei ist... :roll:
Chris |
So, bin nun endlich zu Hause... *ächz*
Unter Delphi6 findet man TChart unter Additional. Das Packge Chart muss installiert sein. Chris |
erst mal vielen dank für die bemühungen!
da das alles nicht funktioniert: WIE KANN ICH DAS ANDERS LÖSEN? ich muss ein dagramm haben... bin für alle lösungen offen!! :coder: |
Also... Mit VtChart kannst du nur zur Laufzeit Diagramme mit dem eingebauten Wizard erstellen (ähnlich wie in MS Excel). Da du ja auf Knopfdruck das Diagramm ausgeben willst, ist das nichts. Deswegen: Alternativen suchen!
Lt. Borland müsste TChart sogar in Delphi3 drin sein. Also auch in Delphi4. Schaue dir mal die Einstellungen für die Komponentenpackages an (Component -> Install Packages). Vielleicht musst du noch was nachinstallieren. Wenn alle Stricke reißen schau' dir mal ![]() Chris |
wo kann ich gucken, welche packages ich drin hab?! hab eines jetzt installiert... in Additional sind ApplicationEvents, ValueList, LableedEdit und ColorBox dazugekommen....
|
In der englischen Version: Components -> Install Packages
In der deutschen Version: Komponenten -> Pakete installieren (o.s.ä.) Das Package müsste "TeeChart Components" sein und ist ab Delphi 3 drin. Also auch in Delphi 7. Chris |
@Chakotay: Nur weil die Komponenten seit Delphi 3 dabei sind, heisst das nicht, dass es die immer in Delphi geben wird ;)
Aber: sie sind noch dabei, ja. |
Sorry, dass ich das wieder aufnehmen muss....
ich programmiere das bei nem freund, der hat delphi7 also mit dem mir gegebenen Code funktioniert das nicht:
Code:
inttostr überladener Bereich
procedure TForm1.Button1Click(Sender: TObject); // Im OnClick-Ereignis von einem Button
var i: integer; begin for i:=0 to 11 do begin Chart1.Series[0].Add( IntToStr( Memo1.Lines[i] ) ); end; end; ----------------------------- Habe das ganze nun anders gelöst:
Code:
nur gebe ich damit ja vor, was drin stehen soll, ich hab mir gedacht, ich regle das mit variablen, aber wenn ich z.B eine Variable (a) nehme, muss die "string" sein, damit ich was aus dem memo lesen kann.
procedure Tprog.Button2Click(Sender: TObject);
begin with Series1 do begin Add( 10, 'Jan.', clRed ); Add( 20, 'Feb.', clRed ); Add( 40, 'März', clRed ); Add( 50, 'April', clRed ); Add( 60, 'Mai', clRed ); Add( 70, 'Juni', clRed ); Add( 80, 'Juli', clRed ); Add( 90, 'August', clRed ); Add( 100, 'Sept.', clRed ); Add( 110, 'Okt.', clRed ); Add( 120, 'Nov.', clRed ); Add( 130, 'Dez.', clRed ); end; end; bei series kann ich aber nur mit "double" arbeiten... wie kann ich das regeln? |
hab ich da irgendwo nen fehler drin!?
|
Hab den Fehler gefunden! Es Muss nicht IntToStr, sondern StrToInt heißen. Folgendes Beispiel funktioniert 100%ig (habe es gerade selber versucht):
Delphi-Quellcode:
Chris
procedure TMainFrm.Button1Click(Sender: TObject);
const aMonths : array[0..11] of String = ('Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'); var i: integer; begin Chart1.Series[0].Clear; for i:=0 to 11 do begin Chart1.Series[0].Add( StrToInt( Memo1.Lines[i] ), aMonths[i], clRed ); end; end; |
DANKE DANKE DANKE DANKE
hab aber noch ein klitze kleines anderes prob.. ich schreibs einfach dahinter, wenn ich ne datei einlade und drücke auf Abbrechen, stopt das programm!
Code:
muss ich was weglassen, oder so?
procedure Tprog.Button4Click(Sender: TObject);
var F1:Textfile; s:single; datei: string; begin //Daten in Edits einladen opendialog1.execute; datei:=opendialog1.FileName; AssignFile(F1,datei); reset(f1); readln(f1,s); zahl1.text:=floattostr(s); readln(f1,s); zahl2.text:=floattostr(s) |
hat sich schon erledigt, wens interessiert:
Code:
procedure Tprog.Button4Click(Sender: TObject);
var F1:Textfile; s:single; datei: string; begin //Daten in Edits einladen opendialog1.execute; datei:=opendialog1.FileName; AssignFile(F1,datei); reset(f1); |
Re: VtChart?
Ich habe D6 Pers. Woher bekomme ich TeeChart? Mein Kumpel hat D6 Prof, kann ich mir es von ihm "holen"?
|
Re: VtChart?
google einfach mal, oder such bei torry.net.
|
Re: VtChart?
Bei Torry.net hab ich nix gefunden (habe nur bei Components gesucht). Im INet kostet die Komponente ganzschön, dafür das ich's nur eben mal für ne kleine Procedure mit einbaue. Kann ich mir die nicht irgendwie von meinem Kumpel holen? -> Welche Dateien brauch ich?
|
Re: VtChart?
mach dir sowas doch selber wenns begrenzte funktionen haben muss
berechne die punkte und zeichne mit canvas auf ne paintbox oder in n Timage aufs bitmap und fertig :) |
Re: VtChart?
Ich hab das Prog jetzt mit zum Kumpel genommen, um die Funktion dort hinzuzufügen. Da ich oft bei ihm bin, ist das kein großer Umstand.
Allerdings geht das Prog dort nicht, ich bekomme immer beim Aufruf eines neuen Formulares (wenn das Prog bereits läuft) eine Fehlermeldung. Zugriffsverletzung. Ich habe nicht dran geändert und auf meinem Rechner geht alles :!: :?: Aber das gehört ja jetzt nicht hierher. Kennt vielleicht jemand noch ne andere Möglichkeit? VtChart und ChartFx hab ich auch, aber da weiß ich nich wie ichs bedienen kann, ich muss eigentlich auch nur 12 Datensätze hinzufügen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz