Grundfunktionen
Das Entry erlaubt dem Benutzer die Eingabe einer Zeichenkette.import tkinter fenster = tkinter.Tk() nameEntry = tkinter.Entry(fenster) nameEntry.pack() fenster.mainloop()Der eingegebene Inhalt des Entrys wird über die Methode get() ausgelesen. Mit der Methode insert() kann ein Text in das Entry eingefügt werden. Der Parameter bestimmt die Position. Die Methode delete() löscht das Zeichen, dessen Index es als Parameter erhält. Werden zwei Parameter übergeben, wird der Bereich gelöscht. Als Positionsparameter kann auch END übergeben werden, um die Position hinter dem letzten Zeichen zu bezeichnen.
Validierung von Entry-Inhalten
Der Anwender ist manchmal nicht gewillt, genau das einzutippen, was sich der Software-Entwickler gedacht hat. Zum Glück sitzt der Programmierer am längeren Hebel. Über Validierungsfunktionen können Sie prüfen, ob die Eingabe Ihren Vorstellungen entspricht. Und sollte der Benutzer sich nicht bequemen, endlich das einzutippen, was Sie erwarten, dann sitzt der auch noch morgen vor Ihrem Programm - außer er schaltet den Computer aus.
def isOkay(why, where, what): return True okayCommand = fenster.register(isOkay) entry = Entry(self, validate='all', validatecommand=(okayCommand, '%d', '%i', '%S'))
- validate:
Der Wert bestimmt, in welchen Situationen eine über \var{validatecommand}
angegebene Funktion aufgerufen wird.
- 'focus': Beim Erhalt oder Verlust des Fokusses.
- 'focusin': Wenn das Element den Fokus erhält.
- 'focusout': Wenn das Element den Fokus verliert.
- 'key': bei jedem Tastendruck
- 'all': in all diesen Situationen
- 'none': Validierung abschalten
- validatecommand: Die registrierte Funktion, die aufgerufen wird, um den Inhalt des Eingabefelds zu prüfen.
- invalidcommand: Die registrierte Funktion, die aufgerufen wird, wenn validatecommand False zurücklieferte.
- %d: aktuelle Aktion (1=einfügen, 0=löschen, -1 anderes)
- %i: Position in der Zeichenkette
- %P: Inhalt des Entry, wenn die Änderung erlaubt ist
- %s: Inhalt des Entry vor der Änderung
- %S: Der Text, der eingefügt wird
- %v: Die Art der Validierung, die gerade durchgeführt wird
- %V: Die Art der Validierung, die den Callback auslöste (key, focusin, focusout, forced)
- %W: Name des Widgets