Форум сайта python.su
Добрий день
В мене є одна проблема з якою я мучаюсь довго
Вона заключається в тому що мені требе зчитати нажимання клавіши та виконати команду у вікні але в мене не хоче зчитувати нажимання кнопок
Я уже пробував 4 разних бібліотек і ні одна не допомогли
Мій код:
from tkinter import * from turtle import * from pynput.keyboard import Key, Listener left(90) a=100 def on_press(key): if key == Key.w: forward(a) def click_button(): left(-90) forward(a) left(90) def lick_button(): left(90) forward(a) left(-90) def ck_button(): forward(a) def k_button(): left(180) forward(a) left(-180) root = Tk() root.title("Закрий це") root.geometry("1x1") btn1 = Button(text="вліво ", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=lick_button) btn1.place(x=1000, y=30) btn1.pack(side=LEFT) btn = Button(text="вправо", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=click_button) btn.place(x=1000, y=30) btn.pack(side=LEFT) btn1 = Button(text="вверх", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=ck_button) btn1.place(x=1000, y=30) btn1.pack(side=LEFT) btn1 = Button(text="вниз", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=k_button) btn1.place(x=1000, y=30) btn1.pack(side=LEFT) root.mainloop() with Listener( on_press=on_press, on_release=on_release) as listener: listener.join()
Отредактировано Makos_HD (Март 1, 2021 22:57:45)
Прикреплённый файлы:
рисувалка.py (1,4 KБ)
Офлайн
Пробуйте так:
from tkinter import Button from turtle import mainloop, right, left, forward, back, onkey, listen left(90) a = 100 def on_press(): forward(a) def to_right(): left(-90) forward(a) left(90) def to_left(): left(90) forward(a) left(-90) def to_up(): forward(a) def to_down(): right(180) forward(a) right(-180) onkey(on_press, 'w') onkey(to_right, 'Right') onkey(to_left, 'Left') onkey(to_up, 'Up') onkey(to_down, 'Down') listen() btn1 = Button(text="вліво ", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=to_left) btn1.pack(side='left') btn2 = Button(text="вправо", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=to_right) btn2.pack(side='left') btn3 = Button(text="вверх", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=to_up) btn3.pack(side='left') btn4 = Button(text="вниз", background="#555", foreground="#ccc", padx="20", pady="8", font="16", command=to_down) btn4.pack(side='left') mainloop()
Офлайн
ramiДякую все працює
Пробуйте так:
Офлайн