# the next line restarts using wish \
# This script generates a counter with start and stop buttons.
# RCS: @(#) $Id: timer,v 1.3 2001/10/29 16:23:33 dkf Exp $
label .counter
-text 0.00 -relief raised
-width 10 -padx 2m
-pady 1m
button .start
-text Start
-command {
set startMoment
[clock clicks
-milliseconds]
.stop configure
-state normal
.start configure
-state disabled
button .stop
-text Stop
-state disabled
-command {
.stop configure
-state disabled
.start configure
-state normal
pack .counter
-side bottom
-fill both
pack .start
-side left
-fill both
-expand yes
pack .stop
-side right
-fill both
-expand yes
global startMoment stopped
set elapsedMS
[expr {[clock clicks
-milliseconds] - $startMoment}]
.counter config
-text [format
"%.2f" [expr {double
($elapsedMS)/1000}]]
bind .
<Control-c
> {destroy .
}
bind .
<Control-q
> {destroy .
}