Завершение начального обучения

zavershenie nachalnogo obucheniya Графические интерфейсы пользователя

В данной главе мы изучили основы использования библиотеки tkinter в сценариях на языке Python и познакомились с рядом простых виджетов — метками, кнопками, фреймами, а также с менеджером компоновки. Этого достаточно для создания простых интерфейсов, но в действительности мы лишь поверхностно ознакомились с набором виджетов tkinter.

В следующих двух главах мы будем применять полученные знания для изучения оставшейся части библиотеки tkinter и приемов ее использования для создания интерфейсов, встречающихся в реальных программах с графическим интерфейсом. В качестве предварительного обзора и предлагаемого маршрута в табл. 7.1 перечислены виджеты, которые нам там встретятся, примерно в том порядке, в котором они будут появляться. Обратите внимание, что в этой таблице перечислены только классы виджетов. Мы также встретимся с некоторыми дополнительными темами, относящимися к виджетам, которых нет в этой таблице.

Таблица 7.1. Классы виджетов tkinter

Классы виджетов

Описание

Label

Простая область для вывода текста

Button

Простая кнопка с меткой

Frame

Контейнер для прикрепления и размещения других виджетов

Toplevel, Tk

Новое окно, управляемое менеджером окон

Message

Метка с несколькими строками

Entry

Простое однострочное поле ввода текста

Checkbutton

Кнопка с двумя состояниями; обычно используется для организации для выбора нескольких вариантов

Radiobutton

Кнопка с двумя состояниями; обычно используется для организации выбора одного варианта из нескольких

Scale

Ползунок со шкалой

PhotoImage

Объект графического изображения, используемый для вывода полноцветных изображений на других виджетах

BitmapImage

Объект графического изображения, используемый для вывода растровых изображений на других виджетах

Menu

Набор вариантов выбора, связанных с Menubutton или с окном верхнего уровня

 

Таблица 7.1 (продолжение)

Классы виджетов

Описание

Menubutton

Кнопка, открывающая меню или подменю с вариантами выбора

Scrollbar

Элемент управления для прокрутки содержимого других виджетов (например, списка, холста, текста)

Listbox

Список имен, доступных для выбора

Text

Виджет для просмотра/редактирования многострочного текста, поддерживающий шрифты и так далее

Canvas

Область для изображения графики с поддержкой возможности рисования линий, окружностей, фотографий, текста и так далее.

 

В этой главе мы уже встречались с виджетами Label, Button и Frame. Для облегчения усвоения оставшийся материал разбит на две главы: глава 8 освещает элементы в верхней части табл. 7.1, вплоть до Menu, а в главе 9 представлены виджеты, находящиеся в нижней части таблицы.

Помимо классов виджетов, представленных в табл. 7.1, в библиотеке tkinter содержатся дополнительные классы и инструменты, многие из которых также будут исследованы в двух следующих главах:

Управление компоновкой

pack, grid, place

Связанные переменные tkinter

StringVar, IntVar, DoubleVar, BooleanVar

Улучшенные виджеты Tk

Spinbox, LabelFrame, PanedWindow

Составные виджеты

Dialog, ScrolledText, OptionMenu

Планируемые обратные вызовы

Методы виджетов after, wait и update

Прочие инструменты

Стандартные диалоги, буфер обмена, bind и Event, параметры настройки виджетов, пользовательские и модальные диалоги, анимационные эффекты

Большинство виджетов tkinter принадлежит к числу знакомых интерфейсных элементов. Некоторые из них обладают очень богатой функциональностью. Например, класс Text реализует сложный виджет многострочного текста, поддерживающий шрифты, цвета и спецэффекты, мощности которого достаточно для реализации веб-броузера. Аналогично класс Canvas предоставляет множество инструментов, достаточно мощных для создания приложений отображения и обработки изображений. Кроме того, расширения для библиотеки tkinter, такие как Pmw, Tix и ttk, добавляют в инструментарий разработчика графических интерфейсов виджеты с еще более богатыми возможностями.

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

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