Печать
Просмотров: 253

Программа на Tkinter, которая печатает коды нажатых клавиш:

from tkinter import *

def do(event):
    print(event.keycode)

win = Tk()
can = Canvas(win, width=800, height=600)

can.pack()
win.bind('<Key>', do)
win.mainloop()


Отображаем коды клавиш в графическом окне:

from tkinter import *

def do(event):
    can.itemconfig(txt, text=event.keycode) # Меняем текст у объекта txt.

win = Tk()
can = Canvas(win, width=800, height=600)
txt = can.create_text(120, 70, text='Текст', fill='blue') # Пишем текст.
can.pack()
win.bind('<Key>', do) # Регистрируем/перехватываем нажатия клавиш направляя их в свою функцию.
win.mainloop()


Задаём тексту размер, через указание шрифта и размера шрифта:

from tkinter import *

def do(event):
    can.itemconfig(txt, text=event.keycode) # Меняем текст у объекта txt.

win = Tk()
can = Canvas(win, width=800, height=600)
txt = can.create_text(120, 70, text='Текст', font=('Arial', '25'), fill='blue') # Пишем текст.
can.pack()
win.bind('<Key>', do) # Регистрируем/перехватываем нажатия клавиш направляя их в свою функцию.
win.mainloop()


Сдвигаем текст вправо:

def do(event):
    can.itemconfig(txt, text=event.keycode) # Меняем текст у объекта txt.
    x1, y1 = can.coords(txt) # Получаем координаты объекта txt.
    can.moveto(txt, x=x1 + 5) # Меняем координату x у объекта txt - сдвигаем вправо.


Рисуем прямоугольник и сдвигаем его вместе с текстом вправо:

def do(event):
     . . .
    x1, y1, x2, y2 = can.coords(p1) # Получаем координаты объекта p1 - здесь их 4.
    can.moveto(p1, x=x1 + 10)

. . .
p1 = can.create_rectangle(10, 120, 210, 170, fill='green')
. . .



TKinter - функции (команды в таблице)

event.keycode
canvas.move()
canvas.moveto()
canvas.itemconfig()
canvas.coords()