# Tkinter dialogs

## `tkinter.simpledialog` --- Standard Tkinter input dialogs

Code source : 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, **kw)
tkinter.simpledialog.askinteger(title, prompt, **kw)
tkinter.simpledialog.askstring(title, prompt, **kw)

  Les trois fonctions ci-dessus fournissent des boîtes de dialogue qui invitent l'utilisateur à saisir une valeur du type souhaité.

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

  Classe mère pour les boîtes de dialogue personnalisées.

  body(master)

    À remplacer pour construire l'interface de la boîte de dialogue et renvoyer le widget qui doit avoir le focus initial.

  buttonbox()

    Le comportement par défaut ajoute les boutons OK et Annuler. À remplacer avoir une disposition de boutons personnalisée.

  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. 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

Code source : Lib/tkinter/filedialog.py

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

### Native load/save dialogs

Les classes et fonctions suivantes fournissent des fenêtres de dialogue de fichiers qui combinent une apparence native avec des options de configuration pour personnaliser le comportement. Les arguments nommés suivants s'appliquent aux classes et fonctions répertoriées ci-dessous :

> parent – la fenêtre sur laquelle placer la boîte de dialogue
> title – le titre de la fenêtre
> initialdir – le répertoire dans lequel la boîte de dialogue démarre
> initialfile – le fichier sélectionné à l'ouverture de la boîte de dialogue
> filetypes – une séquence de n-uplets (étiquette, motif), le caractère générique `'*'` est autorisé
> defaultextension – extension par défaut à ajouter au fichier (boîtes de dialogue de sauvegarde)
> multiple – lorsque vrai, la sélection de plusieurs éléments est autorisée

Fonctions statiques de fabrique

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)

  Les deux classes ci-dessus fournissent des fenêtres de dialogue natives pour enregistrer et charger des fichiers.

Classes de commodité

Les classes ci-dessous sont utilisées pour créer des fenêtres avec fichiers et répertoires à partir de zéro. Celles-ci n'imitent pas l'apparence native de la plateforme.

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

  Crée une boîte de dialogue invitant l'utilisateur à sélectionner un répertoire.

Note

la classe FileDialog doit être sous-classée pour un comportement et une gestion des événements personnalisés.

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

  Crée une boîte de dialogue basique de sélection de fichiers.

  cancel_command(event=None)

    Déclenche la fermeture de la fenêtre de dialogue.

  dirs_double_event(event)

    Gestionnaire d'événements pour l'événement de double-clic sur le répertoire.

  dirs_select_event(event)

    Gestionnaire d'événements pour l'événement de clic sur le répertoire.

  files_double_event(event)

    Gestionnaire d'événements pour l'événement de double-clic sur le fichier.

  files_select_event(event)

    Gestionnaire d'événements pour un événement en un seul clic sur le fichier.

  filter_command(event=None)

    Filtre les fichiers par répertoire.

  get_filter()

    Récupère le filtre de fichiers actuellement utilisé.

  get_selection()

    Récupère l'élément actuellement sélectionné.

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

    Affiche la boîte de dialogue et lance la boucle d'événements.

  ok_event(event)

    Quitte la boîte de dialogue en renvoyant la sélection actuelle.

  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)

    Sort de la boîte de dialogue en renvoyant le nom du fichier, le cas échéant.

  set_filter(dir, pat)

    Définit le filtre de fichiers.

  set_selection(file)

    Met à jour la sélection de fichiers actuelle vers file.

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

  Sous-classe de FileDialog qui crée une fenêtre de dialogue pour sélectionner un fichier existant.

  ok_command()

    Teste qu'un fichier est fourni et que la sélection indique un fichier déjà existant.

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

  Sous-classe de FileDialog qui crée une fenêtre de dialogue pour sélectionner un fichier de destination.

  ok_command()

    Teste si la sélection pointe vers un fichier valide qui n'est pas un répertoire. Une confirmation est requise si un fichier déjà existant est sélectionné.

## `tkinter.commondialog` --- Dialog window templates

Code source : 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)

    Affiche la fenêtre de dialogue.

## `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.

Voir aussi

Modules `tkinter.messagebox`, Lecture et écriture de fichiers