tkinter.tix — Расширенные виджеты для Tk
Исходный код: Lib/tkinter/tix.py
Устарело начиная с версии 3.6: Это расширение Tk не поддерживается и не должно использоваться в новом коде. Используйте tkinter.ttk вместо этого.
Модуль tkinter.tix (Tk Interface Extension) предоставляет дополнительный богатый набор виджетов. Хотя стандартная библиотека Tk содержит много полезных виджетов, они далеки от полноты. Библиотека tkinter.tix предоставляет большинство необходимых виджетов, отсутствующих в стандартной Tk: HList, ComboBox, Control (также известный как SpinBox) и набор прокручиваемых виджетов. tkinter.tix также включает в себя множество других полезных виджетов, которые широко используются в различных приложениях: NoteBook, FileEntry, PanedWindow и т. д.; их более 40.
С помощью всех этих новых виджетов вы можете ввести новые методы взаимодействия в приложения, создавая более полезные и интуитивно понятные пользовательские интерфейсы. Вы можете разработать ваше приложение, выбирая наиболее подходящие виджеты, соответствующие специфическим потребностям вашего приложения и пользователей.
См. также
- Главная страница Tix
-
Главная страница
Tix. Она включает ссылки на дополнительную документацию и загрузки. - Страницы справки Tix
-
Онлайн-версия страниц справки и справочного материала.
- Руководство по программированию Tix
-
Онлайн-версия справочного материала для программистов.
- Приложения разработки Tix
-
Приложения Tix для разработки программ Tix и Tkinter. Приложения Tide работают под Tk или Tkinter и включают TixInspect, инспектор для удаленного изменения и отладки приложений Tix/Tk/Tkinter.
Использование Tix
-
class tkinter.tix.Tk(screenName=None, baseName=None, className='Tix') -
Виджет Toplevel из Tix, который в основном представляет главное окно приложения. Он имеет связанный интерпретатор Tcl.
Классы в модуле
tkinter.tixнаследуются от классов в модулеtkinter. Первый импортирует второй, поэтому для использованияtkinter.tixс Tkinter, все, что вам нужно сделать, это импортировать один модуль. Как правило, вы просто импортируетеtkinter.tixи замените вызов toplevel дляtkinter.Tkнаtix.Tk:from tkinter import tix from tkinter.constants import * root = tix.Tk()
Для использования tkinter.tix, виджеты Tix должны быть установлены, обычно вместе с виджетами Tk. Для проверки вашей установки попробуйте следующее:
from tkinter import tix
root = tix.Tk()
root.tk.eval('package require Tix')
Tix Виджеты
Tix вводит более 40 классов виджетов в tkinter репертуар.
Основные виджеты
-
class tkinter.tix.Balloon -
A Balloon, который всплывает над виджетом, чтобы предоставить справку. Когда пользователь перемещает курсор внутри виджета, к которому привязан виджет Balloon, на экране появится небольшое всплывающее окно с описательным сообщением.
-
class tkinter.tix.ButtonBox -
Виджет ButtonBox создает ящик с кнопками, который обычно используется для
Ok Cancel.
-
class tkinter.tix.ComboBox -
Виджет ComboBox похож на элемент управления раскрывающимся списком в MS Windows. Пользователь может выбрать вариант, либо введя его в подвиджете entry, либо выбрав его из подвиджета listbox.
-
class tkinter.tix.Control -
Виджет Control также известен как виджет
SpinBox. Пользователь может отрегулировать значение, нажав две кнопки со стрелками или введя значение непосредственно в поле ввода. Новое значение будет проверено на соответствие заданным пользователем верхним и нижним пределам.
-
class tkinter.tix.LabelEntry -
Виджет LabelEntry объединяет виджет entry и метку в один виджет. Он может использоваться для упрощения создания интерфейсов типа «форма ввода».
-
class tkinter.tix.LabelFrame -
Виджет LabelFrame объединяет виджет frame и метку в один виджет. Для создания виджетов внутри виджета LabelFrame, новые виджеты создаются относительно подвиджета
frame, и управляются внутри подвиджетаframe.
-
class tkinter.tix.Meter -
Виджет Meter может использоваться для отображения хода фоновой задачи, выполнение которой может занять много времени.
-
class tkinter.tix.OptionMenu -
Виджет OptionMenu создает кнопку меню с вариантами.
-
class tkinter.tix.PopupMenu -
Виджет PopupMenu может быть использован как замена команде
tk_popup. Преимущество виджетаTixPopupMenuзаключается в том, что для его управления требуется меньше кода приложения.
-
class tkinter.tix.Select -
Виджет Select — это контейнер подвиджетов кнопок. Он может быть использован для предоставления пользователю вариантов выбора в стиле радиокнопок или флажков.
-
class tkinter.tix.StdButtonBox -
Виджет StdButtonBox представляет собой группу стандартных кнопок для диалоговых окон в стиле Motif.
Выбиратели файлов
-
class tkinter.tix.DirList -
Виджет DirList отображает список каталогов, их родительских каталогов и подкаталогов. Пользователь может выбрать один из отображённых каталогов или перейти в другой.
-
class tkinter.tix.DirTree -
Виджет DirTree отображает древовидное представление каталога, его родительских каталогов и подкаталогов. Пользователь может выбрать один из отображённых каталогов или перейти в другой.
-
class tkinter.tix.DirSelectDialog -
Виджет DirSelectDialog отображает каталоги файловой системы в диалоговом окне. Пользователь может использовать это диалоговое окно для навигации по файловой системе и выбора нужного каталога.
-
class tkinter.tix.DirSelectBox -
Виджет
DirSelectBoxпохож на стандартный диалог выбора каталога Motif(TM). Обычно используется для выбора каталога. DirSelectBox сохраняет недавно выбранные каталоги в виджете ComboBox, чтобы их можно было быстро выбрать повторно.
-
class tkinter.tix.ExFileSelectBox -
Виджет ExFileSelectBox обычно встроен в виджет tixExFileSelectDialog. Он предоставляет удобный способ выбора файлов для пользователя. Стиль виджета
ExFileSelectBoxочень похож на стандартный диалог выбора файлов в MS Windows 3.1.
-
class tkinter.tix.FileSelectBox -
Виджет FileSelectBox похож на стандартный диалог выбора файлов Motif(TM). Обычно используется для выбора файла. FileSelectBox сохраняет недавно выбранные файлы в виджете
ComboBox, чтобы их можно было быстро выбрать повторно.
-
class tkinter.tix.FileEntry -
Виджет FileEntry можно использовать для ввода имени файла. Пользователь может ввести имя файла вручную. Также пользователь может нажать кнопку, расположенную рядом с полем ввода, которая откроет диалог выбора файла.
Иерархический список
-
class tkinter.tix.HList -
Виджет HList можно использовать для отображения данных с иерархической структурой, например, древовидного представления каталогов файловой системы. Элементы списка отступы и соединены линиями ветвления в соответствии с их местоположением в иерархии.
-
class tkinter.tix.CheckList -
Виджет CheckList отображает список элементов, которые пользователь может выбрать. CheckList действует аналогично виджетам Tk checkbutton или radiobutton, за исключением того, что он способен обрабатывать намного больше элементов, чем checkbutton или radiobutton.
-
class tkinter.tix.Tree -
Виджет Tree может быть использован для отображения иерархических данных в виде дерева. Пользователь может изменять представление дерева, открывая или закрывая части дерева.
Табличный список
-
class tkinter.tix.TList -
Виджет TList можно использовать для отображения данных в табличном формате. Элементы списка виджета
TListпохожи на элементы списка Tk listbox. Основные отличия заключаются в том, что виджетTListможет отображать элементы списка в двумерном формате и позволяет использовать графические изображения, а также различные цвета и шрифты для элементов списка.
Виджеты менеджера
-
class tkinter.tix.PanedWindow -
Виджет PanedWindow позволяет пользователю интерактивно изменять размеры нескольких панелей. Панели могут быть расположены вертикально или горизонтально. Пользователь изменяет размеры панелей, перетаскивая ручку изменения размера между двумя панелями.
-
class tkinter.tix.ListNoteBook -
Виджет ListNoteBook очень похож на виджет
TixNoteBook: он может использоваться для отображения множества окон в ограниченном пространстве, используя метафору блокнота. Блокнот разделен на стопку страниц (окон). Одновременно может быть показана только одна из этих страниц. Пользователь может переходить между страницами, выбирая имя нужной страницы в подвиджетеhlist.
-
class tkinter.tix.NoteBook -
Виджет NoteBook может использоваться для отображения множества окон в ограниченном пространстве, используя метафору блокнота. Блокнот разделен на стопку страниц. Одновременно отображается только одна страница. Пользователь может переходить между страницами, выбирая визуальные «вкладки» в верхней части виджета NoteBook.
Типы изображений
Модуль tkinter.tix добавляет:
-
возможности pixmap ко всем виджетам
tkinter.tixиtkinter, для создания цветных изображений из файлов XPM. -
Типы изображений Compound могут использоваться для создания изображений, состоящих из нескольких горизонтальных линий; каждая линия состоит из ряда элементов (текстов, битовых карт, изображений или пробелов), расположенных слева направо. Например, составное изображение может использоваться для одновременного отображения битовой карты и строки текста в виджете Tk
Button.
Различные виджеты
-
class tkinter.tix.InputOnly -
Виджеты InputOnly предназначены для приема входных данных от пользователя, что можно сделать с помощью команды
bind(только для Unix).
Менеджер геометрии формы
Кроме того, tkinter.tix дополняет tkinter, предоставляя:
-
class tkinter.tix.Form -
Менеджер геометрии Form на основе правил прикрепления для всех виджетов Tk.
Команды Tix
-
class tkinter.tix.tixCommand -
Команды tix предоставляют доступ к различным элементам внутреннего состояния
Tixи контексту приложенияTix. Большая часть информации, обрабатываемой этими методами, относится к приложению в целом или к экрану или дисплею, а не к конкретному окну.Для просмотра текущих настроек обычно используется:
from tkinter import tix root = tix.Tk() print(root.tix_configure())
-
tixCommand.tix_configure(cnf=None, **kw) -
Запрос или изменение параметров конфигурации контекста приложения Tix. Если ни один параметр не указан, возвращает словарь всех доступных параметров. Если параметр указан без значения, метод возвращает список, описывающий указанный параметр (этот список будет идентичен соответствующему подсписку значения, возвращаемого, если параметр не указан). Если указано одна или несколько пар параметр-значение, то метод изменяет указанный параметр(ы) на заданное(ые) значение(я); в этом случае метод возвращает пустую строку. Параметр может быть любым из параметров конфигурации.
-
tixCommand.tix_cget(option) -
Возвращает текущее значение параметра конфигурации, заданного параметром option. Параметр может быть любым из параметров конфигурации.
-
tixCommand.tix_getbitmap(name) -
Находит файл битовой карты с именем
name.xpmилиnameв одном из каталогов битовых карт (см. методtix_addbitmapdir()). Используя методtix_getbitmap(), можно избежать жесткой кодировки имен файлов битовой карты в вашем приложении. При успехе он возвращает полный путь к файлу битовой карты, префикс которого — символ@. Возвращаемое значение может использоваться для настройки параметраbitmapвиджетов Tk и Tix.
-
tixCommand.tix_addbitmapdir(directory) -
Tix поддерживает список каталогов, в которых методы
tix_getimage()иtix_getbitmap()будут искать файлы изображений. Стандартный каталог битовых карт —$TIX_LIBRARY/bitmaps. Методtix_addbitmapdir()добавляет directory в этот список. Используя этот метод, файлы изображений приложения также можно найти с помощью методаtix_getimage()илиtix_getbitmap().
-
tixCommand.tix_filedialog([dlgclass]) -
Возвращает диалог выбора файла, который может быть общим для разных вызовов из этого приложения. Этот метод создаст виджет диалога выбора файла при первом вызове. Этот диалог будет возвращен всеми последующими вызовами
tix_filedialog(). Необязательный параметр dlgclass может быть передан как строка, чтобы указать, какой тип виджета диалога выбора файла требуется. Возможные варианты —tix,FileSelectDialogилиtixExFileSelectDialog.
-
tixCommand.tix_getimage(self, name) -
Находит файл изображения с именем
name.xpm,name.xbmилиname.ppmв одном из каталогов битовых карт (см. методtix_addbitmapdir()выше). Если существует более одного файла с одинаковым именем (но разными расширениями), то тип изображения выбирается в соответствии с глубиной дисплея X: изображения xbm выбираются на монохромных дисплеях, а цветные — на цветных. Используяtix_getimage(), можно избежать жесткой кодировки имен файлов изображений в вашем приложении. При успехе этот метод возвращает имя вновь созданного изображения, которое можно использовать для настройки параметраimageвиджетов Tk и Tix.
-
tixCommand.tix_option_get(name) -
Получает параметры, поддерживаемые механизмом схемы Tix.
-
tixCommand.tix_resetoptions(newScheme, newFontSet[, newScmPrio]) -
Сбрасывает схему и набор шрифтов приложения Tix соответственно на newScheme и newFontSet. Это влияет только на те виджеты, которые были созданы после этого вызова. Поэтому лучше всего вызывать метод resetoptions перед созданием каких-либо виджетов в приложении Tix.
Необязательный параметр newScmPrio может быть задан для сброса приоритета уровня Tk, установленного схемами Tix.
Из-за того, как Tk обрабатывает базу данных X параметров, после импорта и инициализации Tix сбросить схемы цветов и наборы шрифтов с помощью метода
tix_config()невозможно. Вместо этого необходимо использовать методtix_resetoptions().
© 2001–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.10/library/tkinter.tix.html