tkinter.messagebox — Meldungsdialoge von Tkinter

Quellcode: Lib/tkinter/messagebox.py


Das Modul tkinter.messagebox bietet eine Vorlagen-Basisklasse sowie eine Reihe bequemer Methoden für häufig verwendete Zusammenstellungen. Die Meldungsfenster sind modal: Jedes blockiert, bis der Benutzer antwortet, und gibt dann einen Wert zurück, der von der Funktion abhängt. Die show*-Funktionen und Message.show() geben den symbolischen Namen der Schaltfläche zurück, die der Benutzer gedrückt hat, und zwar als Zeichenkette (etwa OK oder YES). Zu den gängigen Arten und Anordnungen von Meldungsfenstern gehören unter anderem:

../_images/tk_msg.png
class tkinter.messagebox.Message(master=None, **options)

Erzeugt ein Meldungsfenster mit einer von der Anwendung vorgegebenen Meldung, einem Symbol und einer Reihe von Schaltflächen. Jede der Schaltflächen im Meldungsfenster wird über einen eindeutigen symbolischen Namen bezeichnet (siehe die Optionen unter type).

Die folgenden Optionen werden unterstützt:

command

Gibt die Funktion an, die aufgerufen wird, wenn der Benutzer den Dialog schließt. Der Name der Schaltfläche, mit der der Benutzer den Dialog geschlossen hat, wird als Argument übergeben. Das gibt es nur unter macOS.

default

Gibt den symbolischen Namen der Standardschaltfläche dieses Meldungsfensters an (OK, CANCEL und so weiter). Wird diese Option nicht angegeben, wird die erste Schaltfläche im Dialog zur Standardschaltfläche.

detail

Gibt eine zusätzliche Meldung zur Hauptmeldung an, die die Option message vorgibt. Die Erläuterung erscheint unterhalb der Hauptmeldung und, sofern das Betriebssystem das unterstützt, in einer weniger hervorgehobenen Schrift als die Hauptmeldung.

icon

Gibt das Symbol an, das angezeigt wird. Wird diese Option nicht angegeben, wird das Symbol INFO angezeigt.

message

Gibt die Meldung an, die in diesem Meldungsfenster angezeigt wird. Der Standardwert ist eine leere Zeichenkette.

parent

Macht das angegebene Fenster zum logischen Elternteil des Meldungsfensters. Das Meldungsfenster wird über seinem Elternfenster angezeigt.

title

Gibt eine Zeichenkette an, die als Titel des Meldungsfensters angezeigt wird. Diese Option wird unter macOS übergangen, weil die Richtlinien der Plattform einen Titel bei dieser Art von Dialog verbieten.

type

Sorgt dafür, dass eine vorgegebene Zusammenstellung von Schaltflächen angezeigt wird.

Bemerkung

Tk 8.6 hat die Option command ergänzt.

show(**options)

Zeigt ein Meldungsfenster an und wartet, bis der Benutzer eine der Schaltflächen auswählt. Gibt dann den symbolischen Namen der ausgewählten Schaltfläche zurück. Schlüsselwortargumente können Optionen übergehen, die im Konstruktor angegeben wurden.

Meldungsfenster mit einer Information

tkinter.messagebox.showinfo(title=None, message=None, **options)

Erzeugt und zeigt ein Meldungsfenster mit einer Information und dem angegebenen Titel und Text an.

Meldungsfenster mit einer Warnung

tkinter.messagebox.showwarning(title=None, message=None, **options)

Erzeugt und zeigt ein Meldungsfenster mit einer Warnung und dem angegebenen Titel und Text an.

tkinter.messagebox.showerror(title=None, message=None, **options)

Erzeugt und zeigt ein Meldungsfenster mit einem Fehler und dem angegebenen Titel und Text an.

Meldungsfenster mit einer Frage

tkinter.messagebox.askquestion(title=None, message=None, *, type=YESNO, **options)

Stellt eine Frage. Zeigt standardmäßig die Schaltflächen YES und NO an. Gibt den symbolischen Namen der ausgewählten Schaltfläche zurück.

tkinter.messagebox.askokcancel(title=None, message=None, **options)

Fragt, ob der Vorgang fortgesetzt werden soll. Zeigt die Schaltflächen OK und CANCEL an. Gibt True zurück, wenn die Antwort ok lautet, andernfalls False.

tkinter.messagebox.askretrycancel(title=None, message=None, **options)

Fragt, ob der Vorgang wiederholt werden soll. Zeigt die Schaltflächen RETRY und CANCEL an. Gibt True zurück, wenn die Antwort retry lautet, andernfalls False.

tkinter.messagebox.askyesno(title=None, message=None, **options)

Stellt eine Frage. Zeigt die Schaltflächen YES und NO an. Gibt True zurück, wenn die Antwort yes lautet, andernfalls False.

tkinter.messagebox.askyesnocancel(title=None, message=None, **options)

Stellt eine Frage. Zeigt die Schaltflächen YES, NO und CANCEL an. Gibt True zurück, wenn die Antwort yes lautet, None bei Abbruch und andernfalls False.

Symbolische Namen der Schaltflächen:

tkinter.messagebox.ABORT = 'abort'
tkinter.messagebox.RETRY = 'retry'
tkinter.messagebox.IGNORE = 'ignore'
tkinter.messagebox.OK = 'ok'
tkinter.messagebox.CANCEL = 'cancel'
tkinter.messagebox.YES = 'yes'
tkinter.messagebox.NO = 'no'

Vorgegebene Zusammenstellungen von Schaltflächen:

tkinter.messagebox.ABORTRETRYIGNORE = 'abortretryignore'

Zeigt drei Schaltflächen mit den symbolischen Namen ABORT, RETRY und IGNORE an.

tkinter.messagebox.OK = 'ok'

Zeigt eine Schaltfläche mit dem symbolischen Namen OK an.

tkinter.messagebox.OKCANCEL = 'okcancel'

Zeigt zwei Schaltflächen mit den symbolischen Namen OK und CANCEL an.

tkinter.messagebox.RETRYCANCEL = 'retrycancel'

Zeigt zwei Schaltflächen mit den symbolischen Namen RETRY und CANCEL an.

tkinter.messagebox.YESNO = 'yesno'

Zeigt zwei Schaltflächen mit den symbolischen Namen YES und NO an.

tkinter.messagebox.YESNOCANCEL = 'yesnocancel'

Zeigt drei Schaltflächen mit den symbolischen Namen YES, NO und CANCEL an.

Symbolbilder:

tkinter.messagebox.ERROR = 'error'
tkinter.messagebox.INFO = 'info'
tkinter.messagebox.QUESTION = 'question'
tkinter.messagebox.WARNING = 'warning'