MsgBox提示问题求解【已解决】
本帖最后由 touch_xu 于 2010-10-25 11:40 编辑我做了一个复制文件的程序,由于文件很多,又要进行日期判断,所以很慢.
提示完了,后有很长时间的没有反应,如何做一个不消失的提示,又不影响代码继续呢,就一直到复制完,都有提示.不要GUI,我主体代码如下:MsgBoxDJS(48, "温馨提示", "正在查找指定日期文件,请等待复制结束提示!", 2, 2)
$sum = 0
For $i = 1 To $FileSearch
$FileDateGet = StringLeft(FileGetTime($FileSearch[$i], 0, 1), 8)
If $CopyTo = "" Then $CopyTo = @WorkingDir
If $_Switch = 1 Then
If $FileDateGet >= $FileDate1 And $FileDateGet <= $FileDate2 Then
If FileCopy($FileSearch[$i], $CopyTo, 1) Then $sum += 1
EndIf
ElseIf $_Switch = 0 Then
If $FileDateGet = $FileDate1 Or $FileDateGet = $FileDate2 Then
If FileCopy($FileSearch[$i], $CopyTo, 1) Then $sum += 1
EndIf
EndIf
Next
If $sum <> 0 Then
MsgBoxDJS(48, "温馨提示", "共复制了" & $sum & "个文件!", 3, 2)
Else
MsgBoxDJS(48, "温馨提示", "没有找到附合条件的文件!", 3, 2)
EndIf ProgressOn;这个算GUI吗? 本帖最后由 touch_xu 于 2010-10-25 10:40 编辑
但是这个如何控制进度,也是个麻烦问题啊!大侠们帮给个例子吧 Opt("GUIOnEventMode", 1)
使用事件驱动模式,看看是否可以。 代码不全,猜一下。
MsgBoxDJS(48, "温馨提示", "正在查找指定日期文件,请等待复制结束提示!", 2, 2)
$sum = 0
Local $temp=0
For $i=1 To $FileSearch
$FileDateGet = StringLeft(FileGetTime($FileSearch[$i], 0, 1), 8)
If $_Switch = 1 Then
If $FileDateGet >= $FileDate1 And $FileDateGet <= $FileDate2 Then
$temp+=1
EndIf
ElseIf $_Switch = 0 Then
If $FileDateGet = $FileDate1 Or $FileDateGet = $FileDate2 Then
$temp+=1
EndIf
EndIf
Next
For $i = 1 To $FileSearch
$FileDateGet = StringLeft(FileGetTime($FileSearch[$i], 0, 1), 8)
If $CopyTo = "" Then $CopyTo = @WorkingDir
If $_Switch = 1 Then
If $FileDateGet >= $FileDate1 And $FileDateGet <= $FileDate2 Then
;If FileCopy($FileSearch[$i], $CopyTo, 1) Then $sum += 1
$sum+=1
ToolTip("正在复制"&$FileSearch[$i]&@CRLF&"总进度:"&$sum/$temp*100&"%",@DesktopWidth-100,@DesktopHeight-100)
FileCopy($FileSearch[$i], $CopyTo, 1))
EndIf
ElseIf $_Switch = 0 Then
If $FileDateGet = $FileDate1 Or $FileDateGet = $FileDate2 Then
If FileCopy($FileSearch[$i], $CopyTo, 1) Then $sum += 1
EndIf
EndIf
Next
If $sum <> 0 Then
MsgBoxDJS(48, "温馨提示", "共复制了" & $sum & "个文件!", 3, 2)
Else
MsgBoxDJS(48, "温馨提示", "没有找到附合条件的文件!", 3, 2)
EndIf 感谢大侠们,感谢3mile ,有这句就好了
ToolTip("正在复制"&$FileSearch[$i]&@CRLF&"总进度:"&$sum/$temp*100&"%",@DesktopWidth-100,@DesktopHeight-100)
谢谢 好贴,对菜菜来说很好。
页:
[1]