В лекции будет рассматриваться пакетtkinter,который по сути является оберткой дляtcl/tk - известного графического пакета для сценарного языка tcl. На примере этого 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

В лекции будет рассматриваться пакетtkinter,который по сути является оберткой дляtcl/tk - известного графического пакета для сценарного языка tcl. На примере этого

Поиск

В лекции будет рассматриваться пакетTkinter,который по сути является оберткой дляTcl/Tk - известного графического пакета для сценарного языка Tcl. На примере этого

 

пакета легко изучить основные принципы построения графического интерфейса пользователя.

 

О графическом интерфейсе

 

Почти все современные графические интерфейсы общего назначения строятся по моделиWIMP - Window, Icon, Menu, Pointer (окно, иконка, меню, указатель). Внутри окон рисуются


 


элементы графического интерфейса,которые для краткости будут называться виджетами(widget -штучка).Меню могут располагаться в различных частях окна,но их поведение достаточно однотипно:они служат для выбора действия из набора предопределенных действий.Пользователь графического интерфейса"объясняет"компьютерной программе требуемые действия с помощью указателя.Обычно указателем служит курсор мыши или джойстика,однако есть и другие"указательные"устройства.С

 

помощью иконок графический интерфейс приобретает независимость от языка и в некоторых случаях позволяет быстрее ориентироваться в интерфейсе.

 

Основной задачей графического интерфейса является упрощение коммуникации между пользователем и компьютером.Об этом следует постоянно помнить при проектировании интерфейса.Применение имеющихся в наличии у программиста(или дизайнера)средств при создании графического интерфейса нужно свести до минимума,выбирая наиболее удобные пользователю виджеты в каждом конкретном случае.Кроме того,полезно следовать принципу наименьшего удивления:из формы интерфейса должно быть понятно его поведение.Плохо продуманный интерфейс портит ощущения пользователя от программы,даже если за фасадом интерфейса скрывается эффективный алгоритм.Интерфейс должен быть удобен для типичных действий пользователя.Для многих приложений такие действия выделены в отдельные серии экранов,называемые"мастерами" (wizards). Однако если приложение - скорее конструктор, из которого пользователь может строить нужные ему решения,типичным действием является именно построение решения.Определить типичные действия не всегда легко,поэтому компромиссом может быть гибрид,в котором есть"мастера"и хорошие возможности для собственных построений.Тем не менее,графический интерфейс не является самым эффективным интерфейсом во всех случаях.Для многих предметных областей решение

 

проще выразить с помощью деклараций на некотором формальном языке или алгоритма на сценарном языке.

 

Основы Tk

 

Основная черта любой программы с графическим интерфейсом-интерактивность.Программа не просто что-то считает(в пакетном режиме)от начала своего запуска до конца:ее действия зависят от вмешательства пользователя.Фактически,графическое приложение выполняет бесконечный цикл обработки событий.Программа,реализующая графический интерфейс,событийно-ориентирована.Она ждет от интерфейса событий,которые и обрабатывает сообразно своему внутреннему состоянию.

 

Эти события возникают в элементах графического интерфейса(виджетах)и обрабатываются прикрепленными к этим виджетам обработчиками.Сами виджеты имеют многочисленные свойства(цвет,размер,расположение),выстраиваются в иерархию принадлежности(один виджет может быть хозяином другого),имеют методы для доступа к своему состоянию.

 

Расположением виджетов(внутри других виджетов)ведают так называемые менеджеры расположения.Виджет устанавливается на место по правилам менеджера расположения.Эти правила могут определять не только координаты виджета,но и его размеры.ВTkимеются три типа менеджеров расположения:простой упаковщик(pack),сетка(grid)и произвольное расположение(place).

 

Но этого для работы графической программы недостаточно.Дело в том,что некоторые виджеты в графической программе должны быть взаимосвязаны определенным образом.Например,полоска прокрутки может быть взаимосвязана с текстовым виджетом:при использовании полоски текст в виджете должен двигаться,и наоборот,при перемещении по тексту полоска должна показывать текущее положение.Для связи между виджетами вTk используются переменные, через которые виджеты и передают друг другу параметры.

 



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 50; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.41 (0.011 с.)