Кнопки — это хорошо и удобно, но для выполнения одного-двух действий удобнее использовать события самого Canvas. Сделаем так, чтобы при щелчке левой кнопкой фигуры были нарисованы, а при щелчке правой — удалены.
from tkinter import * root = Tk() root.geometry('800x600') fr = Frame(root) canv = Canvas(root,bg='white') canv.pack(fill=BOTH,expand=1) def clear(event): canv.delete(ALL) def paint(event): canv.create_rectangle(30,50,120,80,fill='green') canv.create_line(10,100,150,10,fill='blue',width=5) canv.create_rectangle(200,200,500,500) canv.create_oval(200,200,500,500) canv.create_text(350,350,text='Hello!') canv.bind('<Button-1>',paint) canv.bind('<Button-3>',clear) mainloop()
Задания выполнять в функции paint.
1. Нарисовать окружность с центром в точке 300,200, и радиусом 50 (см. справочник Tkinter Canvas)
2. Нарисовать закрашенную окружность в точке 300,200, и радиусом 50
3. Нарисовать линию
4. Нарисовать красную линию
5. Нарисовать красную линию толщиной 3 из точки 10,300 в точку 300,300
6. В какую сторону «растет» координата Y? Почему?
7. Какие названия цветов можно использовать?
8. Можно ли задать произвольный цвет, не имеющий названия?
9. Какие фигуры еще можно рисовать?
2. Нарисовать закрашенную окружность в точке 300,200, и радиусом 50
3. Нарисовать линию
4. Нарисовать красную линию
5. Нарисовать красную линию толщиной 3 из точки 10,300 в точку 300,300
6. В какую сторону «растет» координата Y? Почему?
7. Какие названия цветов можно использовать?
8. Можно ли задать произвольный цвет, не имеющий названия?
9. Какие фигуры еще можно рисовать?
One thought on “10. Порисуем? Графические примитивы tkinter”