-->

使用键盘在迷宫角色的移动(Using the keyboard to move the charac

2019-10-28 16:59发布

我创建了一个简单的迷宫,我也没有办法角色移动到目标。 迷宫是一个使用TKinter窗口,所以我不知道这是否是从停止运行的代码。

我一直在使用pynput,这在一个单独的程序没有Tkinter的窗口中运行的工作尝试过,所以我不明白什么是错的。

  def level1():      
    x=1
    startx = 1
    objectivex = 10
    y=1
    starty=1
    objectivey=10
    val_in_row = [[0,1,2,3,4,5,6,7,8,9,10,11],[0,3,7,11],[0,1,5,7,8,9,11],[0,3,5,6,11],[0,2,4,7,9,10,11],[0,4,6,10,11],[0,1,3,8,9,11],[0,1,3,5,6,11],[0,5,8,9,11],[0,2,4,6,9,11],[0,1,6,7,9,11],[0,1,2,3,4,5,6,7,8,9,10,11]]
    board = Tk()
    board.title("LEVEL 1")
    for i in range(0,len(val_in_row)):
        for j in val_in_row[i]:
            Button(board, text="     ").grid(row=i, column=j)
    Label(board, text="U").grid(row=y, column=x)
    Label(board, text="O").grid(row=10, column=10)
    Label(board, text="      ").grid(row=6, column=13)
    Button(board, text="restart", command = restart).grid(row=9, column=21)
    def on_press(key):
        if key == Key.right:
            right()
        elif key == Key.left:
            left()
        elif key == Key.up:
            up()
        elif key == Key.down:
            down()
    with Listener(on_press=on_press) as listener:
        listener.join()
    board.mainloop()

我希望Tkinter的窗户是开着的,代码仍然跑得那么它会检测到活的键盘事件。

文章来源: Using the keyboard to move the character in a maze