【发布时间】:2016-12-10 05:27:30
【问题描述】:
我相信我的程序在以下情况后冻结:
if pressed(win.getMouse(), startImage):
task = 'start'
timeFormat()
基本上,我要做的是当鼠标点在 stopImage 上时,计时器将停止,当鼠标点击在 lapTimer 上时,它将重置。当我拿出来时
timeFormat()
程序将运行一段时间然后中断。我的停止和开始按钮工作,但不是我的圈按钮。按下停止按钮后如何使它不停止程序?这样我就可以重新开始或重置?
def pressed(pt, image):
width = image.getWidth()
height = image.getHeight()
anchor = image.getAnchor()
x1 = (anchor.getX()) - (.5 * width)
x2 = (anchor.getX()) + (.5 * width)
y1 = (anchor.getY()) - (.5 * height)
y2 = (anchor.getY()) + (.5 * height)
return(x1 <= pt.getX() <= x2 and y1 <= pt.getY() <= y2)
def timeFormat():
sec = 0
minute = 0
hour = 0
timeDisplay = "{0:02d}:{1:02d}:{2:02d}".format(hour, minute, sec)
timer.setText(timeDisplay)
while task == 'start':
task = 'start'
time.sleep(1)
sec += 1
if sec == 60:
sec = 0
minute += 1
if minute == 60:
sec = 0
minute = 0
hour += 1
timeDisplay = "{0:02d}:{1:02d}:{2:02d}".format(hour, minute, sec)
timer.setText(timeDisplay)
check = win.checkMouse()
if check != None:
if pressed(check, stopImage):
task = 'stop'
print('asd')
if pressed(check, startImage):
task = 'start'
if pressed(check, lapImage):
sec = 0
minute = 0
hour = 0
task = 'stop
def main():
while not pressed(win.getMouse(), startImage):
if task == 'stop':
break
if task == 'reset':
sec = 0
minute = 0
hour = 0
break
continue
timeFormat()
main()
【问题讨论】:
-
您好,很遗憾我没有时间学习这个新功能。有一种方法可以让我的工作,我只是在做一些不正常的事情。
标签: python python-3.x