Heim > Backend-Entwicklung > Python-Tutorial > Warum gibt mein Tkinter-Eintrags-Widget einen „NoneType'-Fehler zurück, wenn „.get()' verwendet wird?

Warum gibt mein Tkinter-Eintrags-Widget einen „NoneType'-Fehler zurück, wenn „.get()' verwendet wird?

Susan Sarandon
Freigeben: 2024-12-26 00:14:13
Original
600 Leute haben es durchsucht

Why Does My Tkinter Entry Widget Return a `NoneType` Error When Using `.get()`?

Warum wird „entryBox“ zu „None“, wenn versucht wird, seinen Wert mit .get() abzurufen?

Beim Versuch, den Wert der „entryBox“ abzurufen Wenn Sie ein Widget mit .get() verwenden, wird die Fehlermeldung „AttributeError: ‚NoneType‘-Objekt hat kein Attribut ‚get‘“ angezeigt. Dieser Fehler tritt auf, weil dem EntryBox-Objekt aufgrund der unsachgemäßen Verwendung von .grid() der Wert None zugewiesen wird.

Wenn in Tkinter das Layout eines Widgets mithilfe von .grid(), .pack() angegeben wird, oder .place()-Methoden ist das Ergebnis des Ausdrucks None. In diesem Fall gibt „entryBox.grid()“ „None“ zurück und weist der Variable „entryBox“ effektiv „None“ zu.

Um dieses Problem zu beheben, sollte die Methode „.grid()“ in einer separaten Zeile von der Instanziierung des Widgets verwendet werden . Zum Beispiel:

entryBox = Entry(root, width=60)
entryBox.grid(row=2, column=1, sticky=W)
Nach dem Login kopieren

Dadurch wird sichergestellt, dass die Variable „entryBox“ auf das Widget-Objekt verweist, sodass Sie dessen Wert mit .get() abrufen können:

print(entryBox.get())
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum gibt mein Tkinter-Eintrags-Widget einen „NoneType'-Fehler zurück, wenn „.get()' verwendet wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage