CountDown Control Loop
เห็นตามเว็บที่ให้บริการฝากไฟล์ต่าง เวลาจะดาวน์โหลด เขาจะหน่วงเวลา ด้วยการทำตัวเลข นับถอยหลัง
เพื่อให้เราหยุดดูโฆษณาของเขาก่อน แลกกับการอัพไฟล์และดาวน์โหลดไฟล์
เพื่อบางท่านจะนำไปประยุกต์ใช้งาน ผมเลยนำความรู้เกี่ยวกับเรื่องนี้มาฝาก
-------------------------------------------------------------------------------
ลองดีไซด์ตัว CountDown ด้วย โปรแกรม Autoit3 กันดูครับ จากนั้นก็ลองทำจากภาษาอื่นๆกันบ้าง
ก่อนที่จะเขียนโค๊ดคำสั่ง เราก็ต้องมาคำนวณว่า เราจะใช้เวลา CountDown เท่าไหร่?
ในกรณีย์นี้ ผมจะใช้เวลานับถอยหลัง 1 นาที
คำสั่งที่ใช้ในการหน่วงเวลา ที่ต้องเขียนลงไปในสคริ๊ปคำสั่ง คือ Sleep()
ถ้าเขียน Sleep(1000) จะหมายถึง หน่วงเวลา 1 วินาที
เขียน Control Loop ใช้คำสั่ง For Next แค่ 60 To 0 Step -1 (นับถอยหลังเสต็ปละ 1 วินาที จำนวนทั้งหมด 60 เสต็ป)
----------------------------------------------------------------------------------
เห็นตามเว็บที่ให้บริการฝากไฟล์ต่าง เวลาจะดาวน์โหลด เขาจะหน่วงเวลา ด้วยการทำตัวเลข นับถอยหลัง
เพื่อให้เราหยุดดูโฆษณาของเขาก่อน แลกกับการอัพไฟล์และดาวน์โหลดไฟล์
เพื่อบางท่านจะนำไปประยุกต์ใช้งาน ผมเลยนำความรู้เกี่ยวกับเรื่องนี้มาฝาก
-------------------------------------------------------------------------------
ลองดีไซด์ตัว CountDown ด้วย โปรแกรม Autoit3 กันดูครับ จากนั้นก็ลองทำจากภาษาอื่นๆกันบ้าง
ก่อนที่จะเขียนโค๊ดคำสั่ง เราก็ต้องมาคำนวณว่า เราจะใช้เวลา CountDown เท่าไหร่?
ในกรณีย์นี้ ผมจะใช้เวลานับถอยหลัง 1 นาที
คำสั่งที่ใช้ในการหน่วงเวลา ที่ต้องเขียนลงไปในสคริ๊ปคำสั่ง คือ Sleep()
ถ้าเขียน Sleep(1000) จะหมายถึง หน่วงเวลา 1 วินาที
เขียน Control Loop ใช้คำสั่ง For Next แค่ 60 To 0 Step -1 (นับถอยหลังเสต็ปละ 1 วินาที จำนวนทั้งหมด 60 เสต็ป)
----------------------------------------------------------------------------------
Code:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 186, 114, 193, 125)
$Label1 = GUICtrlCreateLabel("CountDown Status", 16, 16, 157, 17, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("1 :min", 16, 48, 159, 17, $SS_CENTER)
$Button1 = GUICtrlCreateButton("Start", 56, 80, 75, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
GUICtrlSetData($Label1, "Please wait!")
For $i = 60 To 0 Step -1
GUICtrlSetData($Label2, $i & " :sec")
Sleep(1000)
Next
If $i < 0 Then
Sleep(500)
GUICtrlSetData($Label1, "CountDown Completed")
Sleep(500)
SoundPlay(@WindowsDir & "\media\tada.wav",1)
Sleep(500)
GUICtrlSetData($Label1, "CountDown Status")
Sleep(500)
GUICtrlSetData($Label2, "1 :min")
EndIf
EndSwitch
WEnd

Comment