Диалоговые окна Tkinter

tkinter.simpledialog — Стандартные диалоговые окна ввода Tkinter

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


Модуль tkinter.simpledialog содержит удобные классы и функции для создания простых модальных диалогов для получения значения от пользователя.

tkinter.simpledialog.askfloat(title, prompt, **kw)
tkinter.simpledialog.askinteger(title, prompt, **kw)
tkinter.simpledialog.askstring(title, prompt, **kw)

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

class tkinter.simpledialog.Dialog(parent, title=None)

Базовый класс для пользовательских диалоговых окон.

body(master)

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

buttonbox()

В стандартном режиме работы добавлены кнопки «ОК» и «Отмена». Переопределение для пользовательских макетов кнопок.

tkinter.filedialog — Диалоговые окна выбора файла

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


Модуль tkinter.filedialog предоставляет классы и заводские функции для создания окон выбора файлов/каталогов.

Собственные диалоговые окна загрузки/сохранения

Следующие классы и функции предоставляют диалоговые окна с файлами, которые сочетают в себе естественный внешний вид и параметры конфигурации для настройки поведения. Приведенные ниже аргументы ключевого слова применимы к классам и функциям, перечисленным ниже:

родительский - окно для размещения диалогового окна поверх
заголовок - название окна
initialdir - каталог, в котором запускается диалоговое окно.
initialfile - файл, выбранный при открытии диалогового окна
типы файлов - последовательность кортежей (метка, шаблон), допускается подстановочный знак «*»
defaultextension - расширение по умолчанию для добавления к файлу (диалоги сохранения)
несколько - при значении true разрешен выбор нескольких элементов

Статические заводские функции

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

tkinter.filedialog.askopenfile(mode='r', **options)
tkinter.filedialog.askopenfiles(mode='r', **options)

Две вышеупомянутые функции создают диалоговое окно Open и возвращают открытые файловые объекты в режиме только для чтения.

tkinter.filedialog.asksaveasfile(mode='w', **options)

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

tkinter.filedialog.askopenfilename(**options)
tkinter.filedialog.askopenfilenames(**options)

Две вышеупомянутые функции создают диалоговое окно Open и возвращают выбранные имена файлов, которые соответствуют существующим файлам.

tkinter.filedialog.asksaveasfilename(**options)

Создайте диалоговое окно SaveAs и верните выбранное имя файла.

tkinter.filedialog.askdirectory(**options)
Предложите пользователю выбрать каталог.
Дополнительная опция ключевого слова:
mustexist - определяет, должен ли выбранный каталог быть существующим.
class tkinter.filedialog.Open(master=None, **options)
class tkinter.filedialog.SaveAs(master=None, **options)

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

Классы повышенной комфортности

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

class tkinter.filedialog.Directory(master=None, **options)

Создайте диалоговое окно, предлагающее пользователю выбрать каталог.

Примечание

Класс FileDialog должен быть разделен на подклассы для пользовательской обработки событий и поведения.

class tkinter.filedialog.FileDialog(master, title=None)

Создайте простой диалог выбора файла.

cancel_command(event=None)

Инициируйте завершение работы диалогового окна.

dirs_double_event(event)

Обработчик событий для двойного щелчка по событию в каталоге.

dirs_select_event(event)

Обработчик событий для события щелчка по каталогу.

files_double_event(event)

Обработчик события для двойного щелчка по событию в файле.

files_select_event(event)

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

filter_command(event=None)

Отфильтруйте файлы по каталогам.

get_filter()

Извлеките используемый в данный момент файловый фильтр.

get_selection()

Извлеките выбранный в данный момент элемент.

go(dir_or_file=os.curdir, pattern='*', default='', key=None)

Отобразите диалоговое окно и запустите цикл обработки событий.

ok_event(event)

Закройте диалоговое окно, возвращающее текущий выбор.

quit(how=None)

Закройте диалоговое окно, возвращающее имя файла, если таковое имеется.

set_filter(dir, pat)

Установите фильтр файлов.

set_selection(file)

Обновите текущий выбранный файл до file.

class tkinter.filedialog.LoadFileDialog(master, title=None)

Подкласс диалогового окна «Файл», который создает диалоговое окно для выбора существующего файла.

ok_command()

Проверьте, предоставлен ли файл и указывает ли выбор на уже существующий файл.

class tkinter.filedialog.SaveFileDialog(master, title=None)

Подкласс диалогового окна «Файл», который создает диалоговое окно для выбора файла назначения.

ok_command()

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

tkinter.commondialog — Шаблоны диалоговых окон

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


Модуль tkinter.commondialog предоставляет класс Dialog, который является базовым классом для диалоговых окон, определенных в других вспомогательных модулях.

class tkinter.commondialog.Dialog(master=None, **options)
show(color=None, **options)

Визуализируйте диалоговое окно.

Вернуться на верх