// Im folgenden Beispiel wird ein rechteckiger Bereich
// der Zeichenfläche von Form1 vom Zeichnen ausgeschlossen.
// Zunächst wird ein größeres Bild geladen (400 x 300 Pixel),
// dann die Zeichenfläche in ihrer Größe an die Bildausmaße
// angepasst, danach wird ein Rechteck in der Mitte der Fläche
// gesperrt und dann das Bild gezeichnet. Anschließend wird
// die Fläche wieder auf den Ursprungszustand zurückgesetzt.
// Hinweis:
// Die Variable
rgn darf nicht im Event (Button1Click) stehen.

// Getestet mit D4 unter WinME

var 
  rgn: HRGN; 
 
procedure TForm1.Button1Click(Sender: TObject); 
var 
  bm: TBitmap; 
begin 
  bm := TBitmap.create; 
  bm.loadfromfile('d:\bilder\corel004.bmp'); 
  clientheight := bm.height; 
  clientwidth := bm.width; 
  GetClipRgn(canvas.handle, rgn); 
  ExcludeClipRect(canvas.handle, 30, 30, clientwidth - 30, clientheight - 30); 
  canvas.draw(0, 0, bm); 
  SelectClipRgn(canvas.handle, rgn); 
  bm.free; 
end;



Zugriffe seit 6.9.2001 auf Delphi-Ecke