Entry Feld Füllen will nicht so richtig / 'NoneType' object

Fragen zu Tkinter.
Antworten
Gast

Also ich erstelle im konstruktor einer Klasse folgendes Eingabefeld :

Code: Alles auswählen

def __init__(self,root):
        self.root=root
        self.Eingabe1=Entry(root,width=30).grid(row=1,column=2)
Nun möchte ich einer anderen Funktion der Klasse, Daten aus einer Datenbank in dieses Eingabefeld schreiben :

Code: Alles auswählen

self.Eingabe1.insert(0, "blablablablatestdatensatz")
Allerdings kommt dann folgende Fehlermeldung :

'NoneType' object has no attribute 'insert'

Was mache ich falsch ?
Gast

Ok ich hab mir grad selbst geholfen .. es muss heissen :

Code: Alles auswählen

        self.Eingabe1 = Entry(self.root,width=30)
        self.Eingabe1.grid(row=1,column=2)
dann funktioniert es aus irgendeinem mir nicht erklärlichen Grund :) in einem Python Buch das ich hier habe ist es anders erklärt ... naja ist wohl schon paar tage älter ...
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Deja Vu! Ganau das selbe Problem war meine erste Frage in diesem Forum :wink:
Des Rätsels Lösung (falls es Dich noch interessiert):

Code: Alles auswählen

self.Eingabe1=Entry(root,width=30).grid(row=1,column=2) 
Hier wird der Rückgabewert von grid in self.Eingabe1 gespeichert.

Gruß, mawe
Antworten