Ajout de formats de presse-papiers
Remonter à Ajout d'éditeurs de composants
Par défaut, lorsque l'utilisateur choisit Copier lorsqu'un composant est sélectionné dans l'EDI, le composant est copié dans le format interne de Delphi. Il peut ensuite être collé dans une autre fiche ou module de données. Votre composant peut copier d'autres formats dans le Presse-papiers en redéfinissant la méthode Copy.
Par exemple, la méthode Copy suivante permet à un composant TImage de copier son image dans le Presse-papiers. L'image est ignorée par l'EDI de Delphi, mais elle peut être collée dans d'autres applications.
Delphi :
procedure TMyComponent.Copy;
var
MyFormat : Word;
AData,APalette : THandle;
begin
TImage(Component).Picture.Bitmap.SaveToClipBoardFormat(MyFormat, AData, APalette);
ClipBoard.SetAsHandle(MyFormat, AData);
end;
C++ :
void __fastcall TMyComponentEditor::Copy(void)
{
WORD AFormat;
int AData;
HPALETTE APalette;
((TImage *)Component)->Picture->SaveToClipboardFormat(AFormat, AData, APalette);
TClipboard *pClip = Clipboard(); // don't clear the clipboard!
pClip->SetAsHandle(AFormat, AData);
}