用两个按钮分别实现ctrl+C (复制)和ctrl+V(粘贴) 的功能要实现的是,一个用户在word里或者其他软件里用了复制!然后要把他的复制内容通过点按钮复制到我写的软件的memo或者其他东西里去!关键也就是怎么获得系统里已经有的ctrl+c动作后的内容!

解决方案 »

  1.   

    具体实现我也不清楚,不过在CSDN Delphi文档中有一篇<网络吸管开发手记>有类似的操作。
      

  2.   

    使用TClipBoard剪贴板来操作。其中的Assign方法。
      

  3.   

    CopyToClipBoard
    PasteFromClipBoard
      

  4.   

    procedure TForm1.Button1Click(...)
    begin
      if clipboard.assign(cf_text) then
        //paste  
    end;我这里没有delphi,你自己写写看,关键要看剪贴版里边有没有文字内容
      

  5.   

    NextClipHwnd:HWND;//观察链中下一个窗口句柄
      procedure WMDrawClipBoard(var AMessage:TMessage); message WM_DRAWCLIPBOARD;implementation
    procedure TForm1.WMDrawClipBoard(var AMessage: TMessage);
    begin
      SendMessage(NextClipHwnd,AMessage.Msg,AMessage.WParam,AMessage.LParam);
      if (Clipboard.HasFormat(CF_TEXT) or  Clipboard.HasFormat(CF_OEMTEXT)) then
      begin
        //处理剪贴板中内容
        memo1.Text:=Clipboard.asText;
      end;end;procedure TForm1.FormCreate(Sender: TObject);
    begin
      NextClipHwnd:=SetClipBoardViewer(Handle);
    end;procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    begin  ChangeClipboardChain(Handle,NextClipHwnd);  SendMessage(NextClipHwnd,WM_CHANGECBCHAIN,Handle,NextClipHwnd);
    end;