Hier ist mal etwas Beispielcode zur Anregung der grauen Zellen.
Du kannst daraus lernen:
* Kommentare sind Nützlich
* Konstanten verbessern die Lesbarkeit
* mit Unter-Funktionen kommt man Schritt für Schritt zum Ziel
Delphi-Quellcode:
// Rechteck mit bestimmte Höhe erzeugen
function ErzeugeBalken(prozent:double):TRect;
const
BALKENBREITE = 30;
BALKENHOEHE = 150;
begin
Result := Rect(0,0, BALKENBREITE, trunc(BALKENHOEHE * prozent / 100.0));
end;
procedure TForm1.Button1Click(Sender: TObject);
const BALKENABSTAND = 65;
var
balken : TRect;
x,y : Integer;
begin
balken := ErzeugeBalken(40.0{%});
OffsetRect(balken, 35, 45); // Rechteck verschieben
Canvas.FillRect(balken);
balken := ErzeugeBalken(65.0{%});
OffsetRect(balken, 35 + BALKENABSTAND, 45);
Canvas.FillRect(balken);
end;