Thema: Delphi Grafik als screenshot

Einzelnen Beitrag anzeigen

Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: Grafik als screenshot

  Alt 8. Mär 2007, 20:13
Hallo,

hier ist ein Ausschnitt aus deinem Code:
Delphi-Quellcode:
procedure tform1. paintbox1paint(sender:TObject);
begin
Bitmap1 := TBitmap.Create;
Bitmap1.LoadFromFile('laender.bmp');
PaintBox1.Canvas.Draw(0,0,Bitmap1);
// Bitmap1.Free;
einfaerben(sender);
end;
Also jedes mal wenn das Ereignis onPaint der Paintbox ausgelöst wird, lädst du das Bild nach meiner Ansicht immer wieder neu. Also den Code da oben würde ich löschen und dafür folgenden Code hinzufügen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
Bitmap1 := TBitmap.Create;
Bitmap1.LoadFromFile('laender.bmp');
PaintBox1.Canvas.Draw(0,0,Bitmap1);
einfaerben(sender);
end;
Also einen Button hinzufügen und damit das Bild laden und nicht mit onPaint.

Folgendes ist mir auch noch aufgefallen, wieder Code von dir:
Delphi-Quellcode:
   
procedure tform1.einfaerben(sender:TObject);
Var farbe:tcolor;
x,y:integer;
begin
   with canvas do
   with paintbox1 do
   begin
Mit with canvas do zeichnest du auf den Canvas deiner Form und nicht auf die Paintbox, aber das kann natürlich von dir auch gewollt sein.

Ob damit das Problem gelöst ist, weis ich allerdings nicht.
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat