Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Frage zum befehl Image.canvas.pen.Destroy oder FreeInstance? (https://www.delphipraxis.net/131164-frage-zum-befehl-image-canvas-pen-destroy-oder-freeinstance.html)

Code46 19. Mär 2009 22:22


Frage zum befehl Image.canvas.pen.Destroy oder FreeInstance?
 
Hallo

habe mal ne Frage. Undzwar ich habe den Befehl
Delphi-Quellcode:
procedure TForm1.Btn_radiererClick(Sender: TObject);
begin
image1.Canvas.pen.Destroy;
end;
eingegeben jedoch kommt da immer ein Fehler das Programm stürzt immer ab. Könnt ihr mir vielleicht weiter helfen??????

Würde mich sehr freuen . Danke

Satty67 19. Mär 2009 22:38

Re: Frage zum befehl Image.canvas.pen.Destroy oder FreeInsta
 
Destroy löst das Pen-Objekt im Canvas auf.

Das was Du machen willst (radieren) funktioniert so nicht. Zu Radieren musst Du mit der Hintergrundfarbe uberzeichnen.

Code46 19. Mär 2009 22:41

Re: Frage zum befehl Image.canvas.pen.Destroy oder FreeInsta
 
ok danke habe ich schon hinbekommen

Code46 19. Mär 2009 22:57

Re: Frage zum befehl Image.canvas.pen.Destroy oder FreeInsta
 
ein frage noch wie setzte ich das Radiergummi wieder zurück das ich wieder zeichnen kann????

Satty67 19. Mär 2009 23:01

Re: Frage zum befehl Image.canvas.pen.Destroy oder FreeInsta
 
Bin mir nicht ganz sicher was Du gemacht hast. Wenn Du radiert hast, indem Du Pen.Color = Hintergrundfarbe zugewiesen hast, dann Pen.Color wieder eine andere Farbe zuweisen.

Code46 19. Mär 2009 23:13

Re: Frage zum befehl Image.canvas.pen.Destroy oder FreeInsta
 
das ist mein code aber ich will danach wieder zeichnen können da die Pen.Color weiß ist zeichent er nur weiß

Delphi-Quellcode:
procedure TForm1.Btn_radiererClick(Sender: TObject);
begin

Image1.Canvas.pen.Color := clwhite
end;

Satty67 19. Mär 2009 23:17

Re: Frage zum befehl Image.canvas.pen.Destroy oder FreeInsta
 
innerhalb eines Buttons kannst Du das nicht (schwer) behandeln. Also Wechsel der Zeichenfarbe...

Nimm einen zweiten Button (nenn den Stift), dann kannst Du zwischen Stift und Radierer umschalten:
Delphi-Quellcode:
procedure TForm1.Btn_StiftClick(Sender: TObject);
begin
  Image1.Canvas.pen.Color := clBlack; {<- Farbe nach belieben zuweisen }
end;

Code46 19. Mär 2009 23:40

Re: Frage zum befehl Image.canvas.pen.Destroy oder FreeInsta
 
ok danke das mit einem zweiten button hatte ich das schon aber trotzdem danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz