Python 如何在 turtle window 中获取事件?
Python How to get event in turtle window?
我正在制作一个用键盘管理的乌龟界面。
我现在做了这个:
from turtle import *
forward(0)#To activate the window.
def tur(event):
direct = 'right'
pen = 'down'
if event == '<Space>':
if pen == 'down':
penup()
print('Pen up!')
pen = 'up'
if pen == 'up':
pendown()
print('Pen down!')
pen = 'down'
elif event == '<Right>':
right(90)
forward(10)
elif event == '<Left>':
left(90)
forward(10)
elif event == '<Up>':
forward(100)
elif event == '<Down>':
backward(10)
if __name__ == '__main__':
canvasVaribleName.bind(['<Space>', '<Right>', '<Left>', '<Up>', '<Down>'],
tur)
但是 canvas 变量在 turtle 中是如何调用的呢?或者我应该以其他方式获取事件?
你能帮帮我吗?
使用海龟执行代码暗示的典型方法是:
from turtle import Turtle, Screen
screen = Screen()
def toggle_pen():
if turtle.isdown():
turtle.penup()
else:
turtle.pendown()
screen.onkey(toggle_pen, "space")
def right():
turtle.right(90)
turtle.forward(10)
screen.onkey(right, "Right")
def left():
turtle.left(90)
turtle.forward(10)
screen.onkey(left, "Left")
def forward():
turtle.forward(100)
screen.onkey(forward, "Up")
def backward():
turtle.backward(10)
screen.onkey(backward, "Down")
turtle = Turtle()
screen.listen()
screen.mainloop()
您可以阅读在线 Python 乌龟教程之一,尤其是关于如何处理事件的部分。
我正在制作一个用键盘管理的乌龟界面。 我现在做了这个:
from turtle import *
forward(0)#To activate the window.
def tur(event):
direct = 'right'
pen = 'down'
if event == '<Space>':
if pen == 'down':
penup()
print('Pen up!')
pen = 'up'
if pen == 'up':
pendown()
print('Pen down!')
pen = 'down'
elif event == '<Right>':
right(90)
forward(10)
elif event == '<Left>':
left(90)
forward(10)
elif event == '<Up>':
forward(100)
elif event == '<Down>':
backward(10)
if __name__ == '__main__':
canvasVaribleName.bind(['<Space>', '<Right>', '<Left>', '<Up>', '<Down>'],
tur)
但是 canvas 变量在 turtle 中是如何调用的呢?或者我应该以其他方式获取事件? 你能帮帮我吗?
使用海龟执行代码暗示的典型方法是:
from turtle import Turtle, Screen
screen = Screen()
def toggle_pen():
if turtle.isdown():
turtle.penup()
else:
turtle.pendown()
screen.onkey(toggle_pen, "space")
def right():
turtle.right(90)
turtle.forward(10)
screen.onkey(right, "Right")
def left():
turtle.left(90)
turtle.forward(10)
screen.onkey(left, "Left")
def forward():
turtle.forward(100)
screen.onkey(forward, "Up")
def backward():
turtle.backward(10)
screen.onkey(backward, "Down")
turtle = Turtle()
screen.listen()
screen.mainloop()
您可以阅读在线 Python 乌龟教程之一,尤其是关于如何处理事件的部分。