Базовые операции с виджетом Canvas

bazovye operacii s vidzhetom canvas Экскурсия по tkinter, часть 2

Холсты повсеместно используются во многих нетривиальных графических интерфейсах, и далее в этой книге можно будет увидеть более крупные примеры использования холстов, в программах PyDraw, PyPhoto, PyView, PyClock и PyTree. А сейчас сразу займемся примером, в котором демонстрируются основы его применения. В примере 9.13 используется большинство основных методов создания изображений на холсте.

Пример 9.13. PP4E\Gui\Tour\canvas1.py

“демонстрация основных возможностей холста”

from tkinter import *

canvas = Canvas(width=525, height=300, bg=’white’) # 0,0 — верхний левый угол

canvas.pack(expand=YES, fill=BOTH) # рост вниз и вправо

canvas.create_line(100, 100, 200, 200) # fromX, fromY, toX, toY

canvas.create_line(100, 200, 200, 300) # рисование фигур

for i in range(1, 20, 2):

canvas.create_line(0, i, 50, i)

canvas.create_oval(10, 10, 200, 200, width=2, fill=’blue’) canvas.create_arc(200, 200, 300, 100)

canvas.create_rectangle(200, 200, 300, 300, width=5, fill=’red’) canvas.create_line(0, 300, 150, 150, width=10, fill=’green’)

photo=PhotoImage(file=’../gifs/ora-lp4e.gif’)

canvas.create_image(325, 25, image=photo, anchor=NW) # встроить изображение

widget = Label(canvas, text=’Spam’, fg=’white’, bg=’black’) widget.pack()

canvas.create_window(100, 100, window=widget) # встроить виджет

canvas.create_text(100, 280, text=’Ham’) # нарисовать текст

mainloop()

Запущенный сценарий создаст окно, изображенное на рис. 9.23. Ранее уже было показано, как поместить на холст графическое изображение и установить соответствующие ему размеры холста (раздел «Изображения» в конце главы 8). Этот сценарий изображает также фигуры, текст и даже встроенный виджет Label. Его окно пока ограничивается только отображением — чуть ниже будет показано, как добавить обработчики событий, дающие пользователю возможность взаимодействовать с отображаемыми элементами.

Рис. 9.23. Окно сценария canvas1 с изображениями объектов

 

Использованная литература:
Марк Лутц — Программирование на Python, 4-е издание, I том, 2011

Каталог сайтов Всего.ру
Оцените статью
Секреты программирования
Добавить комментарий