Autor Beitrag
beastofchaos
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 247
Erhaltene Danke: 4



BeitragVerfasst: So 02.01.11 14:07 
Hi Leute, habe mich mal durch einige Threadds gewühlt, aber finde keine geeignete Lösung.
Also: In FormCreate(bei Programmstart) kann man aus irgendeinem Grund (direkt) nicht Canvaszeichnungen machen.
hier ein Beispiel an Hand einer Ellipsenzeichnung:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
procedure TForm.FormCreate(Sender: TObject);
begin
Canvas.Pen:=ClBlack;
Canvas.Ellipse(x1,y1,x2,y2);  
end;



Gibt es keinen direkten Befehl, der einmalig zeichnet in Formcreate. Ich will nämlich nciht so Ressourcenverschwendend sein und z.B. das so gestalten:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure TForm.FormCreate(Sender: TObject);
begin
Timer1.Enabled:=True;
end;

procedure TForm.Timer1Timer(Sender: TObject);
begin
Canvas.Pen:=ClBlack;
Canvas.Ellipse(x1,y1,x2,y2);
Timer1.Enabled:=False;
end;



Freue mich auf Antwort, MfG Thomas
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: So 02.01.11 14:17 
Im OnPaint des Forms, wenn es nicht mehr gewünscht ist OnPaint abhängen oder nur per Flag ausführen.
Gegf. Invalidate aufrufen um "Malreste" zu entfernen.

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS

Für diesen Beitrag haben gedankt: beastofchaos