| |
|
51 |
===Обработка нажатий на клавиатуру===
|
| |
|
52 |
|
| |
|
53 |
%%(code)
|
| |
|
54 |
# Написать функцию, обрабатывающую нажатие на клавишу
|
| |
|
55 |
def key_q_pressed(event):
|
| |
|
56 |
print("Pressed Q")
|
| |
|
57 |
|
| |
|
58 |
def key_left_pressed(event):
|
| |
|
59 |
print("Pressed Left")
|
| |
|
60 |
|
| |
|
61 |
# Теперь повесим обработку события нажатия на клавишу на вызов функции
|
| |
|
62 |
root.bind("q", key_q_pressed)
|
| |
|
63 |
root.bind("<Left>", key_left_pressed)
|
| |
|
64 |
%%
|
| |
|
65 |
|
| |
|
66 |
===Обработка событий мыши===
|
| |
|
67 |
%%(code)
|
| |
|
68 |
def left_button_clicked(event):
|
| |
|
69 |
print(event.x, event.y)
|
| |
|
70 |
|
| |
|
71 |
root.bind("<Button-1>", left_button_clicked)
|
| |
|
72 |
%%
|
| |
|
73 |
|
| |
|
77 |
===Как создать прямоугольник===
|
| |
|
78 |
rect = canvas.create_rectangle(x0, y0, x1, y1) - возвращает объект "прямоугольник"
|
| |
|
79 |
|
| |
|
80 |
===Как удалить объект на canvas===
|
| |
|
81 |
canvas.delete(rect) - передаваемый параметр - ссылка на удаляемый объект
|
| |
|
82 |
|
| |
|
83 |
===Документация===
|
| |
|
84 |
http://effbot.org/tkinterbook/
|
| |
|
85 |
http://python-textbok.readthedocs.io/en/1.0/Introduction_to_GUI_Programming.html
|
| |
|
86 |
http://cipcnet.insa-lyon.fr/tcc/help/pubs/tkinter/
|
| |
|
87 |
|
| |
|
88 |
===Что можно писать?===
|
| |
|
89 |
|
| |
|
90 |
* Арканоид
|
| |
|
91 |
* Pong (теннис)
|
| |
|
92 |
* Крестики-нолики с силой тяжести
|
| |
|
93 |
* Змейка
|
| |
|
94 |
* Игра "Жизнь"
|
| |
|
95 |
* Реверси
|
| |
|
96 |
* Xonix
|
| |
|
97 |
|