Vcl.Graphics.TPicture.SaveToClipboardFormat
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;
}
}