Mini-project # 3 - "Stopwatch: The Game"

=========================第一版=========================



# template for "Stopwatch: The Game"

import simplegui

# define global variables
time = "0:00.0"
number = "0/0"
width = 300
height = 200
interval = 100
count = 0
m, n = 0, 0


# define helper function format that converts time
def create_timer():
    global count
    count = count + 1
    global time
    time = format(count)

# in tenths of seconds into formatted string A:BC.D
def format(t):
    millisecond = t % 10
    second = (t / 10) % 60
    minute = (t / 600)

    if second < 10:
        time = str(minute) + ":" + "0" + str(second) + "." + str(millisecond)
        return time
    else:
        time = str(minute) + ":" + str(second) + "." + str(millisecond)
        return time
    
# define event handlers for buttons; "Start", "Stop", "Reset"
def start():
    timer.start()

def stop():
    if not timer.is_running():  
        return 
    timer.stop()
    global m
    m = m + 1
    if count % 10 == 0:
        global n
        n = n + 1
    global number
    number = str(n) + "/" + str(m)

def restart():
    timer.stop()
    global count, time, number, m, n
    count = 0
    time = "0:00.0"
    number = "0/0"
    m, n = 0, 0

# define event handler for timer with 0.1 sec interval


# define draw handler
def draw(canvas):
    canvas.draw_text(number, [250, 30], 30, "Green")
    canvas.draw_text(time, [80, 115], 50, "White")
    
    
# create frame
frame = simplegui.create_frame("Timer", width, height)

# register event handlers


frame.set_draw_handler(draw)
frame.add_button("Start", start, 200)
frame.add_button("Stop", stop, 200)
frame.add_button("Restart", restart, 200)
timer = simplegui.create_timer(interval, create_timer)

# start frame
frame.start()

# Please remember to review the grading rubric



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值