EM_PASTESPECIAL
wParam = (WPARAM) (UINT) uFormat;
lParam = (REPASTESPECIAL FAR *) lpRePasteSpecial;
wParam = (WPARAM) (UINT) uFormat;
lParam = (REPASTESPECIAL FAR *) lpRePasteSpecial;
调试欢乐多
wParam = 0; // not used; must be zero
lParam = 0; // not used; must be zero
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;
begin
PostMessage(memo1.handle,wm_paste,0,0);
end;
可以paste剪切版的内容。
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;
我的想法是用一条语句把想贴的文本贴过去,不能借用剪贴板(那样我不得不再用一个edit,就是因为倒到剪贴板再过去太慢了,所以我想用一条消息带着要粘贴的文本做参数来解决。)
做一个新的memo组件可以处理自定义消息也行,我就是不知道怎么发送带参数的消息,谢谢两位,尽管给的程序都是带0,0的消息。