24. Графические интерфейсы пользователя с Tk¶Graphical User Interfaces with Tk
Tk/Tcl давно является неотъемлемой частью Python. Он предоставляет надежный и независимый от платформы набор инструментов для окон, который доступен программистам Python через модуль Tkinter и его расширения – модули Tix и ttk.
Модуль Tkinter представляет собой тонкий объектно-ориентированный слой поверх Tcl/Tk. Для использования Tkinter не требуется писать код на Tcl, но потребуется обращаться к документации Tk и иногда к документации Tcl. Tkinter – это набор обёрток, реализующих виджеты Tk в виде классов Python. Кроме того, внутренний модуль _tkinter предоставляет потокобезопасный механизм, позволяющий взаимодействовать Python и Tcl.
Главные достоинства Tkinter – это его быстрота и то, что он обычно поставляется
в комплекте с Python. Хотя стандартная документация оставляет желать лучшего, доступны
хорошие материалы: справочные руководства, учебники, книга и
другое. Tkinter также известен своим устаревшим внешним видом,
который значительно улучшен в Tk 8.5. Тем не менее существует множество
других библиотек GUI, которые могут представлять интерес. Дополнительную информацию об
альтернативах см. в разделе Другие пакеты графических пользовательских интерфейсов.
- 24.1.
Tkinter– Интерфейс Python к Tcl/TkTkinter – Python interface to Tcl/Tk- 24.1.1. Модули TkinterTkinter Modules
- 24.1.2. Жизненный спасатель TkinterTkinter Life Preserver
- 24.1.3. Очень быстрый взгляд на Tcl/TkA (Very) Quick Look at Tcl/Tk
- 24.1.4. Отображение базового Tk в TkinterMapping Basic Tk into Tkinter
- 24.1.5. Как связаны Tk и TkinterHow Tk and Tkinter are Related
- 24.1.6. Удобный справочникHandy Reference
- 24.1.6.1. Настройка параметровSetting Options
- 24.1.6.2. УпаковщикThe Packer
- 24.1.6.3. Параметры упаковщикаPacker Options
- 24.1.6.4. Привязка переменных виджетовCoupling Widget Variables
- 24.1.6.5. Менеджер оконThe Window Manager
- 24.1.6.6. Типы данных параметров TkTk Option Data Types
- 24.1.6.7. Привязки и событияBindings and Events
- 24.1.6.8. Параметр indexThe index Parameter
- 24.1.6.9. ИзображенияImages
- 24.1.7. Обработчики файловFile Handlers
- 24.2.
ttk– Тематические виджеты Tkttk – Tk themed widgets - 24.3.
Tix– Расширения виджетов для TkTix – Extension widgets for Tk- 24.3.1. Использование TixUsing Tix
- 24.3.2. Виджеты TixTix Widgets
- 24.3.2.1. Базовые виджетыBasic Widgets
- 24.3.2.2. Селекторы файловFile Selectors
- 24.3.2.3. Иерархический ListBoxHierarchical ListBox
- 24.3.2.4. Табличный ListBoxTabular ListBox
- 24.3.2.5. Виджеты-менеджерыManager Widgets
- 24.3.2.6. Типы изображенийImage Types
- 24.3.2.7. Прочие виджетыMiscellaneous Widgets
- 24.3.2.8. Менеджер геометрии FormForm Geometry Manager
- 24.3.3. Команды TixTix Commands
- 24.4.
ScrolledText– Виджет с прокруткой текстаScrolledText – Scrolled Text Widget - 24.5.
turtle– Графика Turtle для Tkturtle – Turtle graphics for Tk- 24.5.1. ВведениеIntroduction
- 24.5.2. Обзор доступных методов Turtle и ScreenOverview over available Turtle and Screen methods
- 24.5.3. Методы RawTurtle/Turtle и соответствующие функцииMethods of RawTurtle/Turtle and corresponding functions
- 24.5.3.1. Движение TurtleTurtle motion
- 24.5.3.2. Состояние TurtleTell Turtle’s state
- 24.5.3.3. Настройки измеренияSettings for measurement
- 24.5.3.4. Управление перомPen control
- 24.5.3.5. Состояние черепашкиTurtle state
- 24.5.3.6. Использование событийUsing events
- 24.5.3.7. Специальные методы черепашкиSpecial Turtle methods
- 24.5.3.8. Экскурс об использовании составных формExcursus about the use of compound shapes
- 24.5.4. Методы TurtleScreen/Screen и соответствующие функцииMethods of TurtleScreen/Screen and corresponding functions
- 24.5.4.1. Управление окномWindow control
- 24.5.4.2. Управление анимациейAnimation control
- 24.5.4.3. Использование событий экранаUsing screen events
- 24.5.4.4. Настройки и специальные методыSettings and special methods
- 24.5.4.5. Методы, специфичные для Screen (не наследуемые от TurtleScreen)Methods specific to Screen, not inherited from TurtleScreen
- 24.5.5. Публичные классы модуля
turtleThe public classes of the module turtle - 24.5.6. Справка и конфигурацияHelp and configuration
- 24.5.7. Демонстрационные скриптыDemo scripts
- 24.6. IDLE
- 24.6.1. МенюMenus
- 24.6.1.1. Меню «Файл» (оболочка и редактор)File menu (Shell and Editor)
- 24.6.1.2. Меню «Правка» (оболочка и редактор)Edit menu (Shell and Editor)
- 24.6.1.3. Меню «Формат» (только окно редактора)Format menu (Editor window only)
- 24.6.1.4. Меню «Выполнить» (только окно редактора)Run menu (Editor window only)
- 24.6.1.5. Меню «Оболочка» (только окно оболочки)Shell menu (Shell window only)
- 24.6.1.6. Меню «Отладка» (только окно оболочки)Debug menu (Shell window only)
- 24.6.1.7. Меню «Параметры» (оболочка и редактор)Options menu (Shell and Editor)
- 24.6.1.8. Меню «Окно» (оболочка и редактор)Window menu (Shell and Editor)
- 24.6.1.9. Меню «Справка» (оболочка и редактор)Help menu (Shell and Editor)
- 24.6.1.10. Контекстные менюContext Menus
- 24.6.2. Редактирование и навигацияEditing and navigation
- 24.6.3. Запуск и выполнение кодаStartup and code execution
- 24.6.4. Справка и настройкиHelp and preferences
- 24.6.1. МенюMenus
- 24.7. Другие пакеты графического интерфейса пользователяOther Graphical User Interface Packages