...etwas direkt auf den Desktop zeichnen?

Autor: Thomas Stutz

Kategorie: Grafik


var
  
Form1: TForm1;
  Canv: TCanvas;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
  
Canv := TCanvas.Create;
  Canv.Handle := GetWindowDC(0);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  
// Finally free the Canvas Object.
  
Canv.Free;
end;


// Drawing a border
// Einen Rahmen zeichnen

procedure TForm1.Button1Click(Sender: TObject);
begin
  
Canv.pen.Color := clred;
  Canv.pen.Width := 20;
  Canv.moveto(Screen.Width, 2);
  Canv.lineto(2, 2);
  Canv.lineto(2, Screen.Height);
  Canv.lineto(Screen.Width, Screen.Height);
  Canv.lineto(Screen.Width, 2);
end;

// Write some Text
// Text ausgeben

procedure TForm1.Button2Click(Sender: TObject);
begin
  
Canv.Font.Name   := 'Arial';
  Canv.Font.Size   := 55;
  Canv.Font.Color  := clgreen;
  Canv.Brush.Style := bsclear;
  Canv.textout(240, Screen.Height div 2 - 30, 'Hello to Screen !');
end;

// Draw a bitmap
// Ein Bild Zeichnen

procedure TForm1.Button3Click(Sender: TObject);
var
  
myBitmap: TBitmap;
begin
  
myBitmap := TBitmap.Create;
  try
    
myBitmap.LoadFromFile('MyImage.bmp');
    Canv.draw(100, 100, myBitmap);
  finally
    
myBitmap.Free;
  end;
end;


// To Clear the screen: InvalidateRect(0,nil,true);

 

printed from
www.swissdelphicenter.ch
developers knowledge base