Spec-Zone.ru › Python 3.7

tkinter.tix — Расширенные виджеты для Tk

Исходный код: Lib/tkinter/tix.py

Устарело начиная с версии 3.6: Это расширение Tk не поддерживается и не должно использоваться в новом коде. Используйте tkinter.ttk вместо него.

Модуль tkinter.tix (расширение интерфейса Tk) предоставляет дополнительный богатый набор виджетов. Хотя стандартная библиотека Tk имеет много полезных виджетов, они далеки от полноты. Библиотека tkinter.tix предоставляет большинство необходимых виджетов, отсутствующих в стандартной Tk: HList, ComboBox, Control (также известен как SpinBox) и набор прокручиваемых виджетов. tkinter.tix также включает в себя множество других полезных виджетов для широкого спектра применений: NoteBook, FileEntry, PanedWindow и др.; их более 40.

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

См. также

Tix Homepage

Главная страница Tix. Включает ссылки на дополнительную документацию и загрузки.

Tix Man Pages

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

Tix Programming Guide

Онлайновая версия справочного материала для программистов.

Tix Development Applications

Приложения Tix для разработки программ на Tix и Tkinter. Приложения Tide работают под Tk или Tkinter и включают TixInspect, инспектор для удалённого изменения и отладки приложений Tix/Tk/Tkinter.

Использование Tix

class tkinter.tix.Tk(screenName=None, baseName=None, className='Tix')

Виджет верхнего уровня Tix, представляющий в основном главное окно приложения. Он имеет связанный интерпретатор Tcl.

Классы в модуле tkinter.tix являются подклассами классов в tkinter. Первый импортирует второй, поэтому для использования tkinter.tix с Tkinter, всё, что вам нужно сделать, это импортировать один модуль. В общем случае, вы можете просто импортировать tkinter.tix, и заменить вызов верхнего уровня для 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 that pops up over a widget to provide help. When the user moves the cursor inside a widget to which a Balloon widget has been bound, a small pop-up window with a descriptive message will be shown on the screen.

class tkinter.tix.ButtonBox

Виджет ButtonBox создаёт блок кнопок, обычно используемых для Ok Cancel.

class tkinter.tix.ComboBox

Виджет ComboBox похож на элемент управления комбинацией в MS Windows. Пользователь может выбрать вариант, либо введя его в поле ввода, либо выбрав из списка.

class tkinter.tix.Control

Виджет Control также известен как виджет SpinBox. Пользователь может изменять значение, нажав две стрелочные кнопки или введя значение непосредственно в поле ввода. Новое значение будет проверено на соответствие заданным пользователю верхнему и нижнему пределам.

class tkinter.tix.LabelEntry

Виджет LabelEntry объединяет виджет поля ввода и метку в одном виджете. Он может быть использован для упрощения создания интерфейса типа «форма ввода».

class tkinter.tix.LabelFrame

Виджет LabelFrame объединяет виджет рамки и метку в одном виджете. Для создания виджетов внутри LabelFrame создайте новые виджеты относительно подвиджета frame и управляйте ими внутри подвиджета frame.

class tkinter.tix.Meter

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

class tkinter.tix.OptionMenu

Виджет OptionMenu создаёт кнопку меню с вариантами.

class tkinter.tix.PopupMenu

Виджет PopupMenu может использоваться как замена команде tk_popup. Преимущество виджета Tix PopupMenu заключается в том, что для его управления требуется меньше кода приложения.

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 commands обеспечивают доступ к различным элементам внутреннего состояния 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–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.7/library/tkinter.tix.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API