Диалоговые окна 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)¶
Визуализируйте диалоговое окно.
См.также