Hallo!
Ich zeichne in folgender
unit ein Koordinatensystem und dann Zeitwerte mit Canvas.lineto.
Zetzt will ich die einzelnen Werte beschriften mit den aus einer Listbox ausgelesen Werten.
Canvas.TextOut sorgt aber für sprünge im Graphen....
Hat vllt. jemand eine andere Möglichkeit für die Beschriftung?
Delphi-Quellcode:
//...
procedure TGraph.zeichnen;
var i,x:integer;
begin
formcreate(graph);
x:=120;
canvas.MoveTo(20,480);
for i:=0 to Zeiten.ListBox1.Items.Count-1 do
begin
canvas.LineTo(x,500+(-1*(strtoint(Zeiten.ListBox1.Items.Strings[i]))));
//canvas.TextOut(x,strtoint(Zeiten.ListBox1.Items.Strings[i]),inttostr(500-canvas.PenPos.Y));
x:=x+100;
end;
end;
procedure TGraph.FormCreate(Sender: TObject);
begin
with canvas do
begin
//y Achse
MoveTo(20,480);
lineto(20,20);
lineto(10,30);
moveto(20,20);
lineto(30,30);
//x Achse
MoveTo(20,480);
lineto(980,480);
lineto(970,470);
moveto(980,480);
lineto(970,490);
end;
end;
P.S.: Ich weiss, dass das mit der formcreate nicht so toll ist, wird auch noch geändert.
MfG