Delphi剪贴板程序(悬赏10分数以上)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Delphi剪贴板程序(悬赏10分数以上)相关的知识,希望对你有一定的参考价值。
procedure TForm1.Button1Click(Sender: TObject);
var
I:Integer;
begin
//检测剪切板中所有数据格式类型
for I:=0 to Clipboard.FormatCount-1 do
begin
case Clipboard.Formats[I] of
CF_TEXT:Memo1.lines.Add('TEXT');
CF_BITMAP:Memo1.lines.Add('BITMAP');
CF_METAFILEPICT:Memo1.lines.Add('METAFILEPICT');
CF_SYLK:Memo1.lines.Add('SYLK');
CF_DIF:Memo1.lines.Add('DIF');
CF_TIFF:Memo1.lines.Add('TIFF');
CF_OEMTEXT:Memo1.lines.Add('OEMTEXT');
CF_DIB:Memo1.lines.Add('DIB');
CF_PALETTE:Memo1.lines.Add('PALETTE');
CF_PENDATA:Memo1.lines.Add('PENDATA');
CF_RIFF:Memo1.lines.Add('RIFF');
CF_WAVE:Memo1.lines.Add('WAVE');
CF_UNICODETEXT:Memo1.lines.Add('UNICODETEXT');
CF_ENHMETAFILE:Memo1.lines.Add('ENHMETAFILE');
CF_HDROP:Memo1.lines.Add('HDROP');
CF_LOCALE:Memo1.lines.Add('LOCALE');
CF_MAX:Memo1.lines.Add('MAX');
CF_OWNERDISPLAY:Memo1.lines.Add('OWNERDISPLAY');
CF_DSPTEXT:Memo1.lines.Add('DSPTEXT');
CF_DSPBITMAP:Memo1.lines.Add('DSPBITMAP');
CF_DSPMETAFILEPICT:Memo1.lines.Add('DSPMETAFILEPICT');
CF_DSPENHMETAFILE:Memo1.lines.Add('DSPENHMETAFILE');
CF_PRIVATEFIRST:Memo1.lines.Add('PRIVATEFIRST');
CF_PRIVATELAST:Memo1.lines.Add('PRIVATELAST');
CF_GDIOBJFIRST:Memo1.lines.Add('GDIOBJFIRST');
CF_GDIOBJLAST:Memo1.lines.Add('GDIOBJLAST');
else Memo1.lines.Add('其它格式);
end;
end;
end;
如上请问ENHMETAFILE,HDROP,LOCALE,MAX,OWNERDISPLAY,DSPTEXT,PRIVATEFIRST,PRIVATELAST,GDIOBJFIRST,GDIOBJLAST,GDIOBJLAST各自代表什么数据格式,O(∩_∩)O谢谢,回答正确5个以上另外悬赏5分数,10个以上10分数,O(∩_∩)O谢谢,高人不一定为了分数,但是请帮忙( ⊙ o ⊙ )!
需要将粘贴命令从一个程序发送到另一个程序?
【中文标题】需要将粘贴命令从一个程序发送到另一个程序?【英文标题】:Need to send a pasting command from one program to another? 【发布时间】:2010-03-19 18:34:21 【问题描述】:我正在使用一个程序来监视键盘的输入,但想使用同一个程序来填充剪贴板,然后自动粘贴到另一个程序的光标位置?这个可以吗...我用的是Delphi 4 Pro。
【问题讨论】:
【参考方案1】:这是可能的,但这是非常糟糕的设计。提供剪贴板是为了用户的利益和使用,而不是程序员。您最终将丢弃预先存在的剪贴板数据。不可能 100% 忠实可靠地缓存剪贴板内容并在以后恢复。 也就是说,您可以将 Ctrl+V 击键或 WM_Paste 消息发送到另一个窗口。
【讨论】:
您是正确的,但将是控制粘贴消息的用户。我只是想缩短 Ctrl+V,因为它会通过击键知道用户想要做什么。基于组合键,一个程序将从列表中读取并基于该列表进行粘贴?我希望从那以后。有没有更好的办法?【参考方案2】:向目标窗口发送wm_Paste
消息。
但仅在用户告诉您的情况下将数据放在剪贴板上。剪贴板应该始终处于用户的控制之下,否则您将面临破坏用户已经存储在那里的其他数据的风险。
【讨论】:
我对发送 Windows 消息有点陌生,但这正是我想要做的......而且它将是使用分配的键加载和控制它的用户。我只想使 Ctrl+V 自动。谢谢...如果你有一个简单的例子,我可以使用它。以上是关于Delphi剪贴板程序(悬赏10分数以上)的主要内容,如果未能解决你的问题,请参考以下文章