2017-08-28 70 views
0

幫助,我試圖做一個龜圖形程序,使用鍵盤來控制龜的方向,但每次我打開它,它不斷崩潰!龜圖形崩潰

import keyboard 
from turtle import * 
keyboard.add_hotkey('Up arrow', lambda: 
        forward(2)) 
keyboard.add_hotkey('Left arrow', lambda: 
        left(2)) 
keyboard.add_hotkey('right arrow', lambda: 
        right(2)) 

回答

0

首先,我們並不需要的接口的鍵盤模塊與鍵盤移動龜在屏幕上,我們可以用烏龜自己的鍵盤事件:

import turtle 

turtle.shape("turtle") 

turtle.onkey(lambda: turtle.forward(20), "Up") 
turtle.onkey(lambda: turtle.left(45), "Left") 
turtle.onkey(lambda: turtle.right(45), "Right") 

turtle.listen() 
turtle.mainloop() 

請務必點擊窗口在打字前激活它。如果你真的想使用keybard模塊,這似乎爲我工作:

import turtle 
import keyboard 

turtle.shape("turtle") 

keyboard.add_hotkey('up arrow', turtle.forward, args=[20]) 
keyboard.add_hotkey('left arrow', turtle.left, args=[45]) 
keyboard.add_hotkey('right arrow', turtle.right, args=[45]) 

turtle.mainloop() 

你也可以使用一個lambda變種:

keyboard.add_hotkey('right arrow', lambda: turtle.right(45)) 
我的系統(OSX),很難在

雖然(單鍵按下生成的多個事件,直到後來的按鍵,纔會啓動,想以管理員身份運行等)