title image


Smiley Hab auch mal was probiert:
Hi,



ich hab grad versucht, des ganze mal ein bisschen zu vereinfachen.

Bei mir funktioniert es auch, ich frag mich nur, ob es jetzt von der Auflösung abhängig ist, oder ob es so auch allgemeingültig ist?



procedure TForm1.Button2Click(Sender: TObject);

var

Bitmap, Bild1: TBitmap;

begin



Bitmap := TBitmap.Create;

Bitmap.Width := Clientrect.Right;

Bitmap.Height := Clientrect.Bottom;



Bild1 := TBitmap.Create;

Bild1.Width := HorzScrollBar.Range+10;

Bild1.Height:= VertScrollBar.Range+10;



//Bild1 erstellen: links oben und rechts oben

VertScrollBar.Position := 0;

HorzScrollBar.Position := 0;

Bitmap.canvas.copyrect(Bitmap.canvas.ClipRect, Form1.canvas, ClientRect);

BitBlt(Bild1.canvas.Handle, 0, 0, ClientRect.Right, ClientRect.Bottom, Bitmap.canvas.Handle, 0, 0, SRCCOPY);



VertScrollBar.Position := 0;

HorzScrollBar.Position := HorzScrollBar.Range - ClientRect.Right;



Form1.Update;

Bitmap.canvas.copyrect(Bitmap.canvas.ClipRect, Form1.canvas, ClientRect);

Form1.Update;

BitBlt(Bild1.canvas.Handle, HorzScrollBar.Position, 0, ClientRect.Right, ClientRect.Bottom, Bitmap.canvas.Handle, 0, 0, SRCCOPY);



//Bild2 erstellen: links unten

VertScrollBar.Position := VertScrollBar.Range - ClientRect.Bottom;

HorzScrollBar.Position := 0;



Form1.Update;

Bitmap.canvas.copyrect(Bitmap.canvas.ClipRect, Form1.canvas, ClientRect);

Form1.Update;

BitBlt(Bild1.canvas.Handle, 0, VertScrollBar.Position, ClientRect.Right, ClientRect.Bottom, Bitmap.canvas.Handle, 0, 0, SRCCOPY);



//Bild3 erstellen: rechts unten

VertScrollBar.Position := VertScrollBar.Range - ClientRect.Bottom;

HorzScrollBar.Position := HorzScrollBar.Range - ClientRect.Right;



Form1.Update;

Bitmap.canvas.copyrect(Bitmap.canvas.ClipRect, Form1.canvas, ClientRect);

Form1.Update;

BitBlt(Bild1.canvas.Handle, HorzScrollBar.Position, VertScrollBar.Position, ClientRect.Right, ClientRect.Bottom, Bitmap.canvas.Handle, 0, 0, SRCCOPY);



Bild1.SaveToFile('D:\Bild1.bmp');

FreeAndNil(Bitmap);

FreeAndNil(Bild1);

end;





Wär nett, wenn ihr ihn euch geschwind anschauen würdet...:-)

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: