Hallo,
Ich habe in der Schule eine Aufgabe bekommen, dass ich in einer Paintbox 4 Zufällig positionierte Ellipsen eintragen soll, die 1. halt eine unterschiedliche Lage besitzen, 2. eine unterschiedliche Farbe und 3. deren Bezeichnung unter ihnen erscheint.
Die ersten 2 Aufgaben habe ich gelöst, doch bei der 3ten tappe ich im Dunkeln.
Ich habe es mit einem Label versucht, doch das wird nich angezeigt, oder vielleicht auch von der Paintbox überdeckt, ich weiss es leider nicht.
Hier ma mein Quelltext:
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TPoint =
Record
x,y : LongInt;
end;
TForm1 =
class(TForm)
PaintBox1: TPaintBox;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
Karte :
array[1..4]
of TPoint;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var x,y,z : Integer;
ortsname : TLabel;
begin
Paintbox1.Refresh;
Randomize;
For z := 1
to 4
do
begin
x := Karte[z].x;
y := Karte[z].y;
x := Random(Paintbox1.Width);
y := Random(Paintbox1.Height);
PaintBox1.Canvas.Pen.Color :=
RGB(random(256), random(256), random(256));
PaintBox1.Canvas.Ellipse(x-2,y-2,x+2,y+2);
Ortsname := TLabel.Create(Self);
Ortsname.Caption := ('
Ort ' + IntToStr(z));
Ortsname.Top := y+5;
Ortsname.Left := x+5;
end;
end;
end.
Wäre nett wenn mir einer auf die sprünge helfen könnte.
Gruss fabiO