Диалоги 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()

Поведение по умолчанию добавляет кнопки OK и Cancel. Переопределение для пользовательских макетов кнопок.

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

Источник: Lib/tkinter/filedialog.py


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

Родные диалоги загрузки/сохранения

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

parent - окно, поверх которого нужно поместить диалог
title - заголовок окна
initialdir - каталог, в котором начинается диалог
initialfile - файл, выбранный при открытии диалога
filetypes - последовательность кортежей (label, pattern), разрешен подстановочный знак „*“
defaultextension - расширение по умолчанию для добавления в файл (диалоги сохранения)
multiple - при значении 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)

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

ok_command()

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

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

Подкласс FileDialog, создающий диалоговое окно для выбора целевого файла.

ok_command()

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

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

Источник: Lib/tkinter/commondialog.py


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

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

Отрисуйте диалоговое окно.