Hallo,
ich sehe mehrere Probleme:
1. Während das Formular erzeugt wird (Create) kannst du nicht zeichnen. Ebenso nicht in der Methode Activate.
Möchstest Du, dass nach dem Start das Rechteck sichtbar wird, dann zeichne in der OnPaint-Methode des Formulars.
Ich verwende zwar lieber eine Paintbox, aber am Anfang geht auch das Formular selbst.
2. Bei
Delphi-Quelltext
1:
| MainForm.Canvas.Draw(0, (MainForm.Width div 2) - (MainForm.Height div 2), pic); |
verstehe ich die y-Koordinate nicht. Wo soll es denn hingezeichnet werden? Wie groß ist denn Dein Formular?
Warum verwendest Du Fillrect und nicht Rectangle? z.B.
Delphi-Quelltext
1: 2:
| pic.canvas.brush.color:=clred; pic.canvas.rectangle(0,0,100,100); |
3. Wenn Du das Bitmap pic mit TBitmap.create herstellst, musst Du es am Ende auch mit pic.free löschen.
Beste Größe
Mathematiker
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein