Tkinter dialogs

tkinter.simpledialog — Standard Tkinter input dialogs

Вихідний код: Lib/tkinter/simpledialog.py


The tkinter.simpledialog module contains convenience classes and functions for creating simple modal dialogs to get a value from the user.

tkinter.simpledialog.askfloat(title, prompt, *, initialvalue=None, minvalue=None, maxvalue=None, parent=None)
tkinter.simpledialog.askinteger(title, prompt, *, initialvalue=None, minvalue=None, maxvalue=None, parent=None)
tkinter.simpledialog.askstring(title, prompt, *, initialvalue=None, show=None, parent=None)

Prompt the user to enter a value of the desired type and return it, or None if the dialog is cancelled.

title is the dialog title and prompt the message shown above the entry. initialvalue is the value initially placed in the entry. parent is the window over which the dialog is shown. askinteger() and askfloat() also accept minvalue and maxvalue, which bound the accepted value. askstring() also accepts show, a character used to mask the entered text, for example '*' to hide a password.

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

The base class for custom dialogs. Instantiating it shows the dialog modally and returns once the user closes it; the entered value is then available in the result attribute.

result

The value produced by apply(), or None if the dialog was cancelled.

body(master)

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

buttonbox()

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

validate()

Validate the data entered by the user. Return true if it is valid, in which case the dialog proceeds to apply(); return false to keep the dialog open. The default implementation always returns true; override it to check the input.

apply()

Process the data entered by the user, for example by storing it in the result attribute. Called after validate() succeeds and just before the dialog is destroyed. The default implementation does nothing; override it to act on or store the result.

destroy()

Destroy the dialog window, clearing the reference to the widget that had the initial focus.

class tkinter.simpledialog.SimpleDialog(master, text='', buttons=[], default=None, cancel=None, title=None, class_=None)

A simple modal dialog that displays the message text above a row of push buttons whose labels are given by buttons, and returns the index of the button the user presses. default is the index of the button activated by the Return key, cancel the index returned when the window is closed through the window manager, title the window title, and class_ the Tk class name of the window.

go()

Display the dialog, wait until the user presses a button or closes the window, and return the index of the chosen button.

tkinter.filedialog — File selection dialogs

Вихідний код: Lib/tkinter/filedialog.py


The tkinter.filedialog module provides classes and factory functions for creating file/directory selection windows.

Native load/save dialogs

Наступні класи та функції забезпечують діалогові вікна файлів, які поєднують зовнішній вигляд і параметри конфігурації для налаштування поведінки. Наступні ключові аргументи застосовні до класів і функцій, перелічених нижче:

parent - вікно, поверх якого буде розміщено діалогове вікно
title - заголовок вікна
initialdir - каталог, у якому починається діалог
initialfile - файл, вибраний під час відкриття діалогу
filetypes – послідовність (мітка, шаблон) кортежів, дозволений символ підстановки «*».
defaultextension - типове розширення для додавання до файлу (діалогове вікно збереження)
multiple - якщо значення true, дозволено вибір кількох елементів

Статичні заводські функції

The below functions when called create a modal, native look-and-feel dialog, wait for the user’s selection, and return it. The exact return value depends on the function (see below); when the dialog is cancelled it is an empty string, an empty tuple, an empty list or None.

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

Create an Open dialog. askopenfile() returns the opened file object, or None if the dialog is cancelled. askopenfiles() returns a list of the opened file objects, or an empty list if cancelled. The files are opened in mode mode (read-only 'r' by default).

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

Create a SaveAs dialog and return the opened file object, or None if the dialog is cancelled. The file is opened in mode mode ('w' by default).

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

Create an Open dialog. askopenfilename() returns the selected filename as a string, or an empty string if the dialog is cancelled. askopenfilenames() returns a tuple of the selected filenames, or an empty tuple if cancelled.

tkinter.filedialog.asksaveasfilename(**options)

Create a SaveAs dialog and return the selected filename as a string, or an empty string if the dialog is cancelled.

tkinter.filedialog.askdirectory(**options)

Prompt the user to select a directory, and return its path as a string, or an empty string if the dialog is cancelled. Additional keyword option: mustexist - if true, the user may only select an existing directory (false by default).

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)

Вийти з діалогового вікна, повертаючи поточний вибір.

ok_command()

Called when the user confirms the current selection. The base implementation accepts the selection and closes the dialog; LoadFileDialog and SaveFileDialog override it to check the selection first.

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 — Dialog window templates

Вихідний код: Lib/tkinter/commondialog.py


The tkinter.commondialog module provides the Dialog class that is the base class for dialogs defined in other supporting modules.

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

Відобразити діалогове вікно.

tkinter.dialog — Classic Tk dialog boxes

Source code: Lib/tkinter/dialog.py


The tkinter.dialog module provides a simple modal dialog box built on the classic (non-themed) Tk widgets.

tkinter.dialog.DIALOG_ICON

The name of the default bitmap ('questhead') displayed by a Dialog.

class tkinter.dialog.Dialog(master=None, cnf={}, **kw)

Display a modal dialog box built from the classic (non-themed) Tk widgets and wait for the user to press one of its buttons. The options, given through cnf or as keyword arguments, include title (the window title), text (the message), bitmap (an icon, DIALOG_ICON by default), default (the index of the default button) and strings (the sequence of button labels). After construction, the num attribute holds the index of the button the user pressed.

destroy()

Destroy the dialog window.

Дивись також

Модулі tkinter.messagebox, Читання та запис файлів