Autor Beitrag
McDelphie
Hält's aus hier
Beiträge: 5

Win 98,WinXP,Linux
D6 Prof.
BeitragVerfasst: Do 28.08.03 14:49 
Bin n richtiger Anfänger und versuch aus ner TXT Datei einen Chart zu erstellen.

Die TXT-Datei sieht so aus:

1 (Count)
1 (Kind: 1 für Low, 2 für High)
296 (Time)
2
2
4508
3
1
9026
4
2
13966
5
1
34740
6
138877




Und da hab ich mir gedacht, dass das irgendwie so funzen muss:



ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
procedure TForm1.Button1Click(Sender: TObject);

var i: Integer; Time: Longint; Kind: Byte; LoadFile: Textfile;
    a,b,c: string;
begin
  Assignfile(LoadFile,'C:\TestA.txt');
  Reset(LoadFile);
  while not EOF(LoadFile) do
  begin
    Readln(LoadFile,a);
    i:=StrToInt(a);
    Readln(LoadFile,b);
    Kind:=StrToInt(b);
    Readln(LoadFile,c);
    Time:=StrToInt(c)
  end;
  begin
    Series1.Clear;
    Series1.ADDXY(Time,Kind,
    FloattostrF((Time),ffFixed,6,6));
  end;
end;
end.


Oh hab da vielleicht daneben gelegen. Hat einer nen guten Tip...wie schon erwähnt für´nen Anfääänger...Danke
Teutobod
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 55



BeitragVerfasst: Do 28.08.03 15:31 
Hallo!

Was bekommst du denn für eine Fehlermeldung? Oder was genau ist mit der Funktion? Hast du die gemacht?

mfg Teutobod
McDelphie Threadstarter
Hält's aus hier
Beiträge: 5

Win 98,WinXP,Linux
D6 Prof.
BeitragVerfasst: Fr 29.08.03 09:21 
Teutobod hat folgendes geschrieben:
Hallo!

Was bekommst du denn für eine Fehlermeldung? Oder was genau ist mit der Funktion? Hast du die gemacht?

mfg Teutobod



Hi,

da freu ich mich aber,dass sich einer die Mühe macht und da ma helfen will.
Hab da noch mal was geändert, was aber noch nicht hundertprozentig funktioniert. Hier mal der ganze Quellcode:

ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
unit Unit3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, TeEngine, Series, ExtCtrls, TeeProcs, Chart, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Chart1: TChart;
    Series1: TPointSeries;
    Series2: TPointSeries;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Close;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  Time: Longint; Kind: Byte; LoadFile: Textfile;
  a,b,c: string;
begin
  begin
    AssignFile(Loadfile,'C:\Test1A.txt');
    Reset(Loadfile);
repeat
    Readln(Loadfile,a);
    if a='' then exit;
    Readln(Loadfile,b);
    Kind:=Strtoint(b);
    Readln(Loadfile,c);
    Time:=Strtoint(c);
    begin
      Series1.AddXY(Time,Kind,FloattostrF((Time),ffFixed,6,6));
    end;
until a='';
    closefile(Loadfile);
  end;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
   Time: Longint; Kind: Byte; LoadFile: Textfile;
   a,b,c: string;
begin
  AssignFile(Loadfile,'C:\Test1B.txt');
  Reset(Loadfile);
repeat
    Readln(Loadfile,a);
    if a='' then exit;
    Readln(Loadfile,b);
    Kind:=Strtoint(b);
    Readln(Loadfile,c);
    Time:=Strtoint(c);
    begin
      Series2.AddXY(Time,Kind,FloattostrF((Time),ffFixed,6,6));
    end;
until a='';
    closefile(Loadfile);
end;
end.



Er compiliert mir das Ding ohne zu meckern. Wenn ich es dann ausprobiere bekommen ich nur die erste Serie. Die zweite bleibt verschwunden.

Ist evtl. ein weiterer Button notwendig, oder geht das auch so?


Gruß

Hanno
McDelphie Threadstarter
Hält's aus hier
Beiträge: 5

Win 98,WinXP,Linux
D6 Prof.
BeitragVerfasst: Fr 29.08.03 09:41 
Titel: Habs hinbekommen
O.K. erst mal richtig probieren, dann fragen stellen...


:autsch:
kongreddgrass
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 238

Win 98, Win 2000, Win Xp Prof.,Linux 8.2 Prof
Delphi 6
BeitragVerfasst: Fr 29.08.03 21:28 
In Deinem Code hast du ein begin zuviel, oder habe ich nicht genau hingeschaut

ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
unit Unit3;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, TeEngine, Series, ExtCtrls, TeeProcs, Chart, StdCtrls;

type
 TForm1 = class(TForm)
  Button1: TButton;
  Button2: TButton;
  Chart1: TChart;
  Series1: TPointSeries;
  Series2: TPointSeries;
  Button3: TButton;
  procedure Button1Click(Sender: TObject);
  procedure Button2Click(Sender: TObject);
  procedure Button3Click(Sender: TObject);
 private
  { Private-Deklarationen }
 public
  { Public-Deklarationen }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 Close;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
 Time: Longint; Kind: Byte; LoadFile: Textfile;
 a,b,c: string;
begin
AssignFile(Loadfile,'C:\Test1A.txt');
  Reset(Loadfile);
repeat
  Readln(Loadfile,a);
  if a='' then exit;
  Readln(Loadfile,b);
  Kind:=Strtoint(b);
  Readln(Loadfile,c);
  Time:=Strtoint(c);
end;
  begin
   Series1.AddXY(Time,Kind,FloattostrF((Time),ffFixed,6,6));
  end;
begin
until a='';
  closefile(Loadfile);
 end;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  Time: Longint; Kind: Byte; LoadFile: Textfile;
  a,b,c: string;
begin
 AssignFile(Loadfile,'C:\Test1B.txt');
 Reset(Loadfile);
repeat
  Readln(Loadfile,a);
  if a='' then exit;
  Readln(Loadfile,b);
  Kind:=Strtoint(b);
  Readln(Loadfile,c);
  Time:=Strtoint(c);
  begin
   Series2.AddXY(Time,Kind,FloattostrF((Time),ffFixed,6,6));
  end;
until a='';
  closefile(Loadfile);
end;
end.


Oder wenns doch nicht ist,dann wüsste ich auch nichts.

Gruß
Mike

_________________
o.o