Рейтинг  

Яндекс.Метрика
Яндекс цитирования
 

   

Статистика  

Пользователи
7
Материалы
576
Кол-во просмотров материалов
2735174
   

Программа на 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()

  • canvas.move(ob, x, y) - переместить ob в координаты x, y - по ним расположить левый верхний угол
  • canvas.itemconfig(ob, fill="red", width="200") - изменить свойства объекта ob
  • x1, y1, x2, y2 = canvas.coords(ob) получить координаты объекта ob
  • canvas.coords(ob, x1, y1, x2, y2) установить новые координаты объекта ob
  • event.keycode в keycode находится код нажатой клавиши (применяется в функции, вызываемой в bind())

   
   

Login Form