创建进度条(Progress)控件.
GUICtrlCreateProgress ( 左距, 顶距 [, 宽度 [, 高度 [,
样式 [, 扩展样式]]]] )
左距 | 控件左侧的位置. 若此值为 -1, 则根据 GUICoordMode 的设置计算左侧位置. |
顶距 | 控件上方的位置. 若此值为 -1, 则根据 GUICoordMode 的设置计算顶部位置. |
宽度 | [可选参数] 控件的宽度(默认使用先前的宽度). |
高度 | [可选参数] 控件的高度(默认使用先前的高度). |
样式 | [可选参数] 控件的样式. 查看附录 GUI 控件样式表. |
扩展样式 | [可选参数] 控件的扩展样式. 查看附录 扩展样式表. |
成功: | 返回控件标识符(控件ID). |
失败: | 返回 0. |
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
Example()
Func Example()
Local
$progressbar1,
$progressbar2,
$button,
$wait, $s, $msg, $m
GUICreate("我的进度条 GUI", 220, 100, 100, 200)
$progressbar1 = GUICtrlCreateProgress(10,
10, 200, 20)
GUICtrlSetColor(-1, 32250); 不工作于
Windows XP 样式
$progressbar2 = GUICtrlCreateProgress(10,
40, 200, 20, $PBS_SMOOTH)
$button = GUICtrlCreateButton("启动",
75, 70, 70, 20)
GUISetState()
$wait
= 20; 进度步进值 20 毫秒
$s
= 0; 保存进度值
Do
$msg = GUIGetMsg()
If $msg = $button Then
GUICtrlSetData($button, "停止")
For $i = $s To
100
If GUICtrlRead($progressbar1) = 50 Then MsgBox(0,
"信息", "完成一半...", 1)
$m =
GUIGetMsg()
If $m
= -3 Then ExitLoop
If $m
= $button
Then
GUICtrlSetData($button, "继续")
$s = $i;保存当前进度位置到
$s
ExitLoop
Else
$s = 0
GUICtrlSetData($progressbar1, $i)
GUICtrlSetData($progressbar2, (100 -
$i))
Sleep($wait)
EndIf
Next
If $i > 100 Then
;
$s=0
GUICtrlSetData($button, "启动")
EndIf
EndIf
Until
$msg = $GUI_EVENT_CLOSE
EndFunc ;==>Example
provider with jb51.net (unicode) |