36 lines
925 B
Plaintext
36 lines
925 B
Plaintext
Procedure.d TimesPSec(Reset=#False)
|
|
Static starttime, cnt
|
|
Protected Result.d, dt
|
|
If Reset
|
|
starttime=ElapsedMilliseconds(): cnt=0
|
|
Else
|
|
cnt+1
|
|
dt=(ElapsedMilliseconds()-starttime)
|
|
If dt
|
|
Result=cnt/(ElapsedMilliseconds()-starttime)
|
|
EndIf
|
|
EndIf
|
|
ProcedureReturn Result*1000
|
|
EndProcedure
|
|
|
|
If OpenWindow(0,#PB_Ignore,#PB_Ignore,220,110,"",#PB_Window_SystemMenu)
|
|
Define Event, r.d, GadgetNumber
|
|
ButtonGadget(0,10, 5,200,35,"Click me!")
|
|
ButtonGadget(1,10,70,100,35,"Reset")
|
|
TextGadget (2,10,45,200,25,"")
|
|
TimesPSec(1)
|
|
Repeat
|
|
Event=WaitWindowEvent()
|
|
If Event=#PB_Event_Gadget
|
|
GadgetNumber =EventGadget()
|
|
If GadgetNumber=0
|
|
r=TimesPSec()
|
|
SetGadgetText(2,"You are clicking at "+StrD(r,5)+" Hz.")
|
|
ElseIf GadgetNumber=1
|
|
TimesPSec(1)
|
|
SetGadgetText(2,"Counter zeroed.")
|
|
EndIf
|
|
EndIf
|
|
Until Event=#PB_Event_CloseWindow
|
|
EndIf
|