Einzelnen Beitrag anzeigen

Benutzerbild von Steve
Steve

Registriert seit: 2. Mär 2004
Ort: Würzburg
730 Beiträge
 
Delphi 2006 Personal
 
#2

Re: Screenshot von einem Memo

  Alt 18. Mär 2005, 12:46
Hi,


erstmal herzlich willkommen in der DP!

Zur Frage: sowas in der Richtung könnte helfen:
Delphi-Quellcode:
TYPE
  TForm1 = CLASS(TForm)
  ...
  PRIVATE
  // Methode deklarieren
    FUNCTION ScreenshotControl(aControl : TControl; aFileName : String) : Boolean;
  END;
...

FUNCTION TForm1.ScreenshotControl(aControl : TControl; aFileName : String) : Boolean;
VAR
  bmp: TBitmap;
BEGIN
  Result := FALSE;
  IF Assigned(aControl) THEN
  TRY
    Bmp := TBitmap.Create;
    Bmp.Width := aControl.Width;
    Bmp.Height := aControl.Height;
    Bmp.Canvas.CopyRect(Rect(0,0,Bmp.Width,Bmp.Height),
                        Canvas,aControl.BoundsRect); // "Canvas" = Self.Canvas
    Bmp.SaveToFile(aFileName);
    Result := TRUE;
  FINALLY
    FreeAndNil(Bmp);
  END;
END;

{ Aufruf }
IF ScreenShotControl(Memo1,'D:\Test.bmp') Then ShowMessage('Hat geklappt!');
Das Ganze kann natürlich nach Belieben um- oder ausgebaut werden...
Was da passiert braucht vermtulich nicht weiter kommentiert werden

Gruß
Stephan

[edit]Tippfehler ausgebssert etc.[/edit]
Stephan B.
Wer andern eine Grube gräbt ist Bauarbeiter!
Wer im Glashaus sitzt, sollte sich lieber im Dunkeln ausziehen!
Außerdem dieser Satz kein Verb...
  Mit Zitat antworten Zitat