怎么选择多个文件并进行复制并有进度条显示
本帖最后由 xiaozui 于 2010-5-25 18:04 编辑本人菜鸟,想问下怎么把选择的多个文件进行复制并显示复制进度?例如,打开一个选择文件对话框,选择多个文件,然后把这些选择的文件复制到目的文件夹内,复制过程中显示进度条。 给你做个例子,可用于整个目录复制,包含目录内的目录,复制时有复制进度的显示。
#include <File.au3>
$dir = FileSelectFolder('选择目录:','')
If @error = 1 Then
MsgBox(48,"",'复制取消')
Exit
Else
$pathlen = StringLen($dir)
AdlibRegister('_prog')
ProgressOn('进度','复制中...')
$conf=_copy ($dir)
ProgressOff()
If $conf = 1 then
MsgBox(48,"",'复制完成!')
Else
MsgBox(48,"",'复制失败!')
EndIf
Exit
EndIf
Func _prog ()
$newsize = DirGetSize(@ScriptDir & '\scripts')/1024^2
$soursize = DirGetSize($dir)/1024^2
$prog = $newsize / $soursize * 100
ProgressSet($prog)
EndFunc
Func _copy($_Path)
$folder = _FileListToArray($_Path, "*", 0)
If Not IsArray($folder) Then Return 0
For $o = 1 To $folder
_copy($_Path & "\" & $folder[$o])
FileCopy ($_Path, @ScriptDir & '\scripts\'&StringTrimLeft($_Path,$pathlen)&"\",9)
Next
Return 1
EndFunc
谢谢,学习了 这个贴的13#刚上传有完整的代码:
http://www.autoitx.com/thread-15463-1-1.html 感谢楼上各位朋友,问题已经解决,谢谢咯! 回复 2# C.L
来学习的 {:face (411):}看看东西怎样 很好很强大。
页:
[1]