Hallöle
!!
Bastel mir gerade meine eigene kleine Diagrammkomponente. Soll nur ganz einfach sein, ne X und Y Achse, Beschriftung und n paar Werte rein!
Ich hab jetzt die Zeichnuntg der X und Y Achse, außerdem hab ich das Repaint überschrieben (override+inherited) und lasse darin meine Achsen neuzeichnen:
Delphi-Quellcode:
procedure TDiagramm.DrawNewX;
begin
Canvas.MoveTo(50, Height-50);
Canvas.LineTo(Width-50, Height-50);
end;
procedure TDiagramm.DrawNewY;
var
XPos, YPos: Integer;
begin
Canvas.MoveTo(50, Height-50);
Canvas.LineTo(50, 50);
{ XPos := Canvas.TextWidth(FYBeschriftung);
YPos := Canvas.TextHeight(FYBeschriftung);
Canvas.TextOut(50-(XPos div 2), 50-Ypos, FYBeschriftung);}// -> die Y-Achse hat eine Beschriftung oben drauf -> ist hier aber eigentlich nicht wichtig
end;
procedure TDiagramm.Repaint;
begin
Picture := NIL; // -> Damit keine alten Reste übrig bleiben
Canvas.Brush.Color := clwhite; // -> hab ich versuchsweie mit reingeschrieben
Canvas.Pen.Color := clblack; // -> ||
DrawNewX;
DrawNewY;
end;
1. Ist es gut die Achsen im Repaint neu zu zeichnen?
2. Wenn ich die Größe des Diagramms ändere, soll automatisch alles neugezeichnet werden, wie könnt ich das umsetzen?
Mfg F.W.