Delphi:使复制/粘贴工作

时间:2013-12-29 19:04:42

标签: delphi copy paste

所以我想在我的Delphi应用程序中添加一个复制/粘贴功能,它可以绘制不同的形状,并用它们填充它们。

这是Copy菜单项的on even处理程序:

procedure TForm1.Copy1Click(Sender: TObject);
begin
  Clipboard.Open;
  if SelectShape <> nil then
      clipboard.SetComponent(SelectShape);
   Clipboard.Close;
  end;

我收到错误:

       Incompatible types: 'TComponent' and 'TBaseShape'  

TBaseShape是我应用程序中所有形状的祖先类

我不知道为什么它不起作用......

1 个答案:

答案 0 :(得分:3)

另一种方法是使用私有数据格式,并将对象序列化为XML或其他易于调试的基于文本的结构,并将其放入剪贴板。在Bitmap上渲染你的对象(假设它是某种图形)也很有用/礼貌,并将它放在剪贴板上(剪贴板可以同时保存多种/多种格式),这样用户就可以粘贴到绘图中,等等,得到“东西” 这是一个使用GPX数据

沿着这些方向做某事的问题

How to paste a custom format clipboard data into a TMemo?