![]() |
Re: löschen eines images
Zitat:
Delphi-Quellcode:
weiterhelfen.
Image1.Canvas.Brush.Color := clwhite; //Setzt die Füllfarbe auf weiß
Man liest sich, Stanlay :hi: |
Re: löschen eines images
Hi stanlay: ha danke so funktioniert es. Also problem ist gelöst, ich schaff es jetzt das Image zu leeren
@Notam :und MikeS: ursprünglich waren (zumindest bei mir) nur die Linien zu löschen vorgesehen. Aber
Delphi-Quellcode:
hilft mir auch weiter. Werde ich warscheinlich auch noch in mein projekt einbauen...
image1.picture:=nil;
also ich danke euch allen schon mal, dank euch funzt jeztz alles so wie ich es vorgesehen hab. cu gregor |
Re: löschen eines images
Also bei mir liegt schon ein bild unter den Linien :)
Irgendwie verpennt :wall: Naja, vielen Dank für eure Hilfe, so wie ich das jetzt verstanden funktioniert dass ja mit dem rechteck... Grüße, Kiaro |
Re: löschen eines images
Hi nochmal!
Ich hab jetzt nochmal ewig rumprobiert, aber wenn er die Linien mit dem Rechtck überzeichnet überzeichnet er alles mit dem Rechteck... Ich hab schon probiert das Bild vorm dem überzeichnen in eine TBitmap Variable zu speichern und hinterher von da aus wieder in die canvas.picture.bitmap Eigenschaft zu schreiben, aber das macht er auch nicht... :cry: Kiaro |
Re: löschen eines images
du kannst bilder hin- und herkopieren mit
Delphi-Quellcode:
oder
Bitmap.Canvas.CopyRect(const Dest: TRect; Canvas: TCanvas; const Source: TRect);
Delphi-Quellcode:
[edit=Luckie]Delphi-Tags gesetzt. Mfg, Luckie[/edit]
BitBlt aus Windows, die eigentlich nur von deinem Canvas gewrappt wird
|
Re: löschen eines images
achja wenn du nur
var buffer: TBitmap; hast und dann sagst buffer := Image1.Picture.Bitmap dann übergibst du nur deinen Zeiger auf das Bild. die Daten werden nicht dupliziert. dazu musst du erst
Delphi-Quellcode:
machen.
buffer := TBitmap.Create;
buffer.pixelformat := image1.picture.bitmap.pixelformat; buffer.width := image1.picture.bitmap.width; buffer.height := image1.picture.bitmap.height; buffer.Canvas.CopyRect(bounds(0,0,buffer.width, buffer.height),image1.picture.bitmap.canvas,bounds(0,0,buffer.width, buffer.height)) ; [edit=Luckie]Delphi-Tags gestezt. Mfg, Luckie[/edit] |
Re: löschen eines images
Hi nochmal!
Ich hab das so jetzt mal probiert, sieht bei mir jetzt folgendermaßen aus:
Delphi-Quellcode:
rasterz macht nichts weiter als ein paar Linien auf das canvas zeichen.
procedure TForm1.Raster1Click(Sender: TObject);
var pic:TBitmap; begin try pic:=TBitmap.Create; pic.PixelFormat:=form1.Image1.Picture.Bitmap.PixelFormat; pic.Width:=form1.Image1.Picture.Bitmap.Width; pic.Height:=form1.Image1.Picture.Bitmap.Height; pic.Canvas.CopyRect(bounds(0,0,pic.width,pic.height),form1.image1.picture.bitmap.canvas,bounds(0,0,pic.width,pic.height)); if raster1.Checked = false then begin rasterz; raster1.Checked:=true; form1.label2.visible:=true; end else begin raster1.checked:=false; form1.Label2.Visible:=false; form1.Image1.canvas.brush.color:=clTeal; form1.Image1.canvas.rectangle(0,0,form1.Image1.width,form1.Image1.Height); form1.Image1.Picture.Bitmap:=pic; end; finally pic.Free; end; end; Wenn ich jetzt raster.checked machen will (is n Punkt im Mainmenu) dann sagt er mir aber ungültiges Pixelformat, wenn er das Speichern des Bildes tun sollte... weiß grad echt nich mehr weiter Vielen Dank im Voraus, Kiaro [edit=Luckie]Sind in diesem Thread die Delphi-Tags kaput? :roll: Mfg, Luckie[/edit] |
Re: löschen eines images
pixelformat setzen!
Delphi-Quellcode:
pic:=TBitmap.Create;
pic.PixelFormat:=form1.Image1.Picture.Bitmap.PixelFormat; pic.Width:=form1.Image1.Picture.Bitmap.Width; pic.Height:=form1.Image1.Picture.Bitmap.Height; pic.Pixelformat := pf24bit; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz