Ist dies möglich, und wenn ja, wie würden Sie vorgehen, um Ihre eigene Zwischenablage zu implementieren?
Damit meine ich, dass man alles in die Zwischenablage kopieren und einfügen kann, genau wie in der Windows-Zwischenablage, aber ohne die Systemzwischenablage zu stören.
Um eine bessere Vorstellung zu bekommen, habe ich Folgendes versucht:
uses
ClipBrd;
...
procedure TMainForm.actCopyExecute(Sender: TObject);
var
MyClipboard: TClipboard;
begin
MyClipboard := TClipboard.Create;
try
MyClipboard.AsText := 'Copy this text';
finally
MyClipboard.Free;
end;
end;
Das funktioniert insofern, als dass die Zeichenfolge "Diesen Text kopieren" in die Zwischenablage kopiert wird, aber es überschreibt alles, was sich in der Windows-Zwischenablage befand.
Die obigen Schritte müssen nur eine Instanz der Windows-Zwischenablage erstellen, nicht aber Ihre eigene.
Beachten Sie, dass die benutzerdefinierte Zwischenablage beliebige Daten und nicht nur reinen Text enthalten kann. Sie sollte genauso funktionieren wie die Windows-Zwischenablage, ohne diese zu beeinträchtigen (d. h. ohne dass die Daten in der Zwischenablage verloren gehen).
Wie könnte dies erreicht werden?
Danke.