有谁知道如何在Delphi中复制文件?它喜欢在文件或文件夹上按Ctrl + C,然后我们可以在某处粘贴?我只知道如何通过Clipbrd Unit复制文本,但我不知道文件,文件夹!请帮我 !
使用该CF_HDROP格式存储文件/文件夹的完整路径,或使用CF_SHELLIDLIST格式存储文件/文件夹ITEMIDLIST.有关更多详细信息,请参阅MSDN:
可替换地,转换的文件夹/文件路径(S)以ITEMIDLIST使用值(S) SHParseDisplayName(),ILCreateFromPath()或其它类似的功能,则使用SHCreateDataObject()来创建一个IDataObject从它们,然后传递到OleSetClipboard().
剪贴板和拖放有很多共同点。大多数支持拖放的库也拥有剪贴板所需的所有功能。例如检查这个库: http: //melander.dk/delphi/dragdrop/
它是免费的,具有完整的源代码,并且有很多示例,包括剪贴板操作。
示例之一是 DragDrop\Demos\Unicode\DragDropUnicode.dproj,它有弹出命令“复制到剪贴板”:
procedure TForm1.ActionFileCopyExecute(Sender: TObject);
begin
if (FFiles = '') then
DropFileSource1.Files.Text := LoadResString(0)
else
DropFileSource1.Files.Text := FFiles;
DropFileSource1.CopyToClipboard;
end;
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你。
| 归档时间: |
|
| 查看次数: |
2041 次 |
| 最近记录: |