首页 > 解决方案 > tkinder.TclError 错误事件类型或keysym“key”

问题描述

****我在 raspberry pi 3 b+*** 上运行这个我正在做一个学校项目,并且正在跟随 Tkinter 上的教程,我试图运行我的程序,但它给了我一个错误

我是 pyhton 的菜鸟,所以不太确定

   import RPi.GPIO as gpio
   import time
   import sys
    import Tkinter as tk

    def init():
            gpio.setmode(gpio.BOARD)
            gpio.setup(16, gpio.OUT)
            gpio.setup(11, gpio.OUT)
            gpio.setup(13, gpio.OUT)
            gpio.setup(15, gpio.OUT)

    def forward(tf):
        gpio.output(16, True)
        time.sleep(tf)
        gpio.cleanup()

    def reverse(tf):
        gpio.output(16, False)
      gpio.cleanup()

    def pr(tf):
           gpio.output(16, False)

        time.sleep(tf)
       gpio.cleanup()

    def pl(tf):
        gpio.output(16, True)

    gpio.cleanup()

def tl(tf):
    gpio.output(16, True)

    gpio.cleanup()

def tr(tf):
    gpio.output(16, False)

    gpio.cleanup()


def key_input(event):
    init()
    print "key :", event.char
    key_press = event.char
    st = 0.030

    if key_press.lower() == 'w':
        forward(st)
    elif key_press.lower() == 's':
        reverse(st)
    elif key_press.lower() == 'a':
        pl(st)
    elif key_press.lower() == 'd':
        pr(st)
    elif key_press.lower() == 'q':
        tl(st)
    elif key_press.lower() == 'e':
        tr(st)


command = tk.Tk()         

这里它显示一个错误它说 command.bind('', key_input) file "/usr/lib/python2.7/lib-tk/Tkinder.py", line 1106 in bind return self._bind(('bind', self._W )、sequence、func、add) 文件“/usr/lib/python2.7/lib-tk/Tkinder.py”,绑定中的第 1061 行 return self.tk.call (what + (sequence,cmd) _tkinter .TclError:错误的事件类型或keysym“key”

command.bind('<key>', key_input)
command.pack()
command.mainloop()

它应该打开一个窗口,我可以在其中按任意键并将其作为输入

标签: pythontkinter

解决方案


推荐阅读