Contenu du presse papier (clipboard)

Comment savoir si le presse papier contient une image ou du texte ?

Avec ce code, si le presse papier contient une image elle est copiée dans un Timage, si c'est du texte le contenu est copié dans un mémo.

procedure TForm1.Button1Click(Sender: TObject);
var
  MyHandle: THandle;
begin
  Clipboard.Open;
  if Clipboard.HasFormat(CF_TEXT) then
  begin
    MyHandle:=Clipboard.GetAsHandle(CF_TEXT);
    Memo1.Lines.Add(StrPas(GlobalLock(MyHandle)));
    GlobalUnlock(MyHandle);
  end;
  if (Clipboard.HasFormat(CF_BITMAP)) or
    (Clipboard.HasFormat(CF_PICTURE)) then
    Image1.Picture.Assign(Clipboard);
  Clipboard.Close;
end;

Rejoignez-nous