EM_PASTESPECIAL  
wParam = (WPARAM) (UINT) uFormat; 
lParam = (REPASTESPECIAL FAR *) lpRePasteSpecial; 

解决方案 »

  1.   

    或WM_PASTE  
    wParam = 0; // not used; must be zero 
    lParam = 0; // not used; must be zero 
     
      

  2.   

    请问如下程序是否可以?我只是示意,可能声明类型不对,或参数顺序不对,各位可否给个正常运行的例子?
    var
    s:string;
    p:pchar;
    wParam:WPARAM;
    lParam:REPASTESPECIAL ;
    begin
       s:='Something Pasted!';
       p:=pchar(s);
       wParam = (WPARAM) (UINT) uFormat; 
       lParam = (REPASTESPECIAL FAR *) p;    PostMessage(memo1.handle,EM_PASTESPECIAL,wPara,lParam);
    end;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      PostMessage(memo1.handle,wm_paste,0,0);
    end;
    可以paste剪切版的内容。
      

  4.   

    给你一个完整的例子:(按下button2把memo1的内容拷贝到剪切版,按下button1可以paste剪切版的内容到memo1)
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      PostMessage(memo1.handle,wm_paste,0,0);
    end;
    procedure TForm1.Button2Click(Sender: TObject);
    begin
      memo1.SelectAll;
      memo1.CopyToClipboard;
    end;
      

  5.   

    各位:
    我的想法是用一条语句把想贴的文本贴过去,不能借用剪贴板(那样我不得不再用一个edit,就是因为倒到剪贴板再过去太慢了,所以我想用一条消息带着要粘贴的文本做参数来解决。)
    做一个新的memo组件可以处理自定义消息也行,我就是不知道怎么发送带参数的消息,谢谢两位,尽管给的程序都是带0,0的消息。