onkey(flick, 'space')
listen()
该函数的使用 绑定事件
"""Fidget, inspired by fidget spinners.
Exercises
1. Change the spinner pattern.
2. Respond to mouse clicks.
3. Change its acceleration.
4. Make it go forwards and backwards.
"""
from turtle import *
state = {'turn': 0}
# 设置 边界图案
def hua(colors):
# begin_fill()
color(colors)
for x in range(1, 9):
forward(100)
left(225)
# for x in range(1, 19):
# forward(100)
# if x % 2 == 0:
# left(175)
# else:
# left(225)
# end_fill()
color('black')
def spinner():
"""Draw fidget spinner."""
clear()
angle = state['turn'] / 10
right(angle)
forward(100)
hua('red')
# dot(120, 'red')
back(100)
right(120)
forward(100)
hua('green')
# dot(120, 'green')
back(100)
right(120)
forward(100)
hua('blue')
# dot(120, 'blue')
back(100)
right(120)
update()
def animate():
"""Animate fidget spinner."""
# 使停止
if state['turn'] > 0:
state['turn'] -= 1
spinner()
ontimer(animate, 20)
def flick(x, y):
"""Flick fidget spinner."""
# 设置 旋转角度
state['turn'] += 50
# setup(420, 420, 370, 0)
hideturtle()
tracer(False)
# width(20)
# onkey(flick, 'space')
onscreenclick(flick)
listen()
animate()
done()
本文介绍了一个基于fidget spinners的编程教程,探讨了如何通过改变颜色模式、响应鼠标点击、调整加速和双向运动来增强互动。通过Turtle库实现的fidget spinner展示了基础的图形处理和事件绑定。

3万+

被折叠的 条评论
为什么被折叠?



