Image wieder clearen
Image wieder clearen
Hallo zusammen,
auf einem Bild mit TImage habe ich mit Image1.Canvas etwas gezeichnet. Da ich mit einem Button diese Zeichnung wieder löschen möchte tippe ich ja "Image1.canvas.clear" oder "Image1.canvas.refresh". Leider Cleart er bei ersterem nicht nur die Zeichnung von Canvas sondern auch das Ganze Bild, ich habe dann nur noch ein komplett weißes Bild. Mit "Image1.canvas.refresh" tut sich gar nichts.
Auch "Image1.Picture.Clear" habe ich ausprobiert, aber damit löscht man ja das ganze Bild. Ich möchte nur das die Zeichnung von dem Canvas gelöscht wird.
Ich hoffe ihr wisst was ich meine und könnt mir helfen.
Grüße
Pegaro
auf einem Bild mit TImage habe ich mit Image1.Canvas etwas gezeichnet. Da ich mit einem Button diese Zeichnung wieder löschen möchte tippe ich ja "Image1.canvas.clear" oder "Image1.canvas.refresh". Leider Cleart er bei ersterem nicht nur die Zeichnung von Canvas sondern auch das Ganze Bild, ich habe dann nur noch ein komplett weißes Bild. Mit "Image1.canvas.refresh" tut sich gar nichts.
Auch "Image1.Picture.Clear" habe ich ausprobiert, aber damit löscht man ja das ganze Bild. Ich möchte nur das die Zeichnung von dem Canvas gelöscht wird.
Ich hoffe ihr wisst was ich meine und könnt mir helfen.
Grüße
Pegaro
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Image wieder clearen
Canvas.FillRect(Rect(0,0,Canvas.Width,Canvas.Height))
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
Re: Image wieder clearen
hat leider nicht funktioniert...
Danke trotzdem
Danke trotzdem
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Image wieder clearen
Canvas.Brush.Style := bsSolid;
Canvas.Brish.Color := clWhite;
Canvas.FillRect(Rect(0,0,Canvas.Width,Canvas.Height));
Canvas.Brish.Color := clWhite;
Canvas.FillRect(Rect(0,0,Canvas.Width,Canvas.Height));
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
Re: Image wieder clearen
wieder nicht funktioniert :/
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Image wieder clearen
Wenn du nix sagst ausser "funktiniert nicht" kann ich dir leider auch nicht helfen. Das ist keine Fehlerbeschreibung. Und meine Glaskugel hat meine Frau fallengelassen.
Vllt wärs auch ganz Sinnvoll den kopf mal anzuschalten und mal zu schauen was ich dir da vorgeschlagen hab und evntl zu verstehn und den Fehler zu beheben. Anders lernt man nämlich recht schlecht.
Vllt wärs auch ganz Sinnvoll den kopf mal anzuschalten und mal zu schauen was ich dir da vorgeschlagen hab und evntl zu verstehn und den Fehler zu beheben. Anders lernt man nämlich recht schlecht.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
Re: Image wieder clearen
Naja es passiert ja auch nichts. Es flackert nur kurz, was mir halt zeigt, dass das Programm irgendetwas tut, aber die Zeichnung wird davon nicht gelöscht.
Re: Image wieder clearen
Verstehe ich diese etwas kryptische Beschreibung richtig, dass du ein Bild in eine TImage-Komponente geladen hast, in dem Bild mit Hilfe des Canvas herummalst und dann die eigene Zeichnung löschen möchtest?
Wenn dem so ist, dann musst du das Bild neu laden, um diese Zeichnung zu entfernen. Angenommen, das Bild stammt aus der Datei "C:\Bild.jpg", dann machst du
Wenn dem so ist, dann musst du das Bild neu laden, um diese Zeichnung zu entfernen. Angenommen, das Bild stammt aus der Datei "C:\Bild.jpg", dann machst du
Code: Alles auswählen
Image1.Picture.LoadFromFile('c:\Bild.jpg');
Re: Image wieder clearen
Richtig verstanden und Problem gelöst 
Wenn ich das Programm mit dem Bild über ein USB-Stick auf ein anderen PC abspielen möchte, passt der Computer den Dateipfad dann automatisch an oder was muss ich tun, dass er es macht?

Wenn ich das Programm mit dem Bild über ein USB-Stick auf ein anderen PC abspielen möchte, passt der Computer den Dateipfad dann automatisch an oder was muss ich tun, dass er es macht?
Re: Image wieder clearen
Nein, wie sollte unser Freund denn "wissen", welchen Laufwerksbuchstaben der USB-Stick bekommen hat?passt der Computer den Dateipfad dann automatisch an
Es sei denn, du hast dein Programm auch auf dem USB-Stick, dann lasse den Laufwerksbuchstaben im Pfad zur BIlddatei weg. Oder wenn die Bilddatei im selben Ordner ist wie die Programmdatei, kommst du auch mit folgender Anweisung ans Ziel:
Code: Alles auswählen
var
bilddateiName: String;
begin
bilddateiName := ExtractFilePath(Application.ExeName) + 'bild.jpg';
Image1.Picture.LoadFromFile(bilddateiName);
end;
Code: Alles auswählen
bilddateiName := ExtractFilePath(Application.ExeName) + '..\bilder\bild.jpg';
Re: Image wieder clearen
Super haut alles hin 
Dankeschön ^^

Dankeschön ^^