Vcl.Graphics.TPicture.SaveToClipboardFormat

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

procedure SaveToClipboardFormat(var AFormat: Word; var AData: THandle;
var APalette: HPALETTE);

C++

void __fastcall SaveToClipboardFormat(System::Word &AFormat, NativeUInt &AData, HPALETTE &APalette);

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
procedure
function
public
Vcl.Graphics.pas
Vcl.Graphics.hpp
Vcl.Graphics TPicture


Beschreibung

Reserviert ein globales Handle und schreibt die Grafik in dem nativen Zwischenablageformat (CF_BITMAP für Bitmaps, CF_METAFILE für Metadateien usw.).

Mit SaveToClipboardFormat wird die Grafik in einem Zwischenablageformat gespeichert. Das Ergebnis kann anschließend mit der Zwischenablagemethode SetAsHandle in die Zwischenablage kopiert werden.

Die Palette der Grafik wird im Parameter APalette zurückgegeben, das Format im Parameter AFormat und ein Handle auf die Daten im Parameter AData. Bevor die Grafik gespeichert werden kann, muss die Anwendung das Format mit der Methode RegisterClipboardFormat registriert haben.

Das folgende Codefragment zeigt, wie ein Bitmap in die Zwischenablage gespeichert wird.

Hinweis: Mit dem Codefragment für die Methode LoadFromClipboardFormat können Sie ein Bitmap aus der Zwischenablage laden.

Delphi:

uses
  Vcl.Clipbrd;
procedure TForm1.Button1Click(Sender: TObject);
var
  MyFormat : Word;
  Picture : TPicture;
  AData : THandle;
  APalette : HPALETTE;
begin
  Picture := TPicture.Create;
  try
    Picture.LoadFromFile('C:\Users\Public\Pictures\Sample Pictures\desert.bmp');
    Picture.SaveToClipBoardFormat(MyFormat, AData, APalette);
    ClipBoard.SetAsHandle(MyFormat,AData);
  finally
    Picture.Free;
  end;
end;

C++:

#include <Vcl.Clipbrd.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender){
	TClipboard* cb = Clipboard();
	unsigned short MyFormat;
	TPicture* Picture;
	unsigned int AData;
	HPALETTE APalette;

	Picture = new TPicture();
	try{
		Picture->LoadFromFile("C:\\Users\\Public\\Pictures\\Sample Pictures\\desert.bmp");
		Picture->SaveToClipboardFormat(MyFormat, AData, APalette);
		cb->SetAsHandle(MyFormat, AData);
	}
	__finally{
		delete Picture;
	}
}

Siehe auch