Textvariable an entry-widget koppeln

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Papp Nase
User
Beiträge: 139
Registriert: Dienstag 11. März 2014, 15:12

Hi,

dass hier geht:

Code: Alles auswählen

class XYZ():
    def __init__(self):
        ...
        
    def _create_widgets(self):
        textvar=tk.StringVar()
        entry_w = tk.Entry(textvariable=textvar)
Das hier geht nicht:

Code: Alles auswählen

class XYZ():
    def __init__(self):
        self.textvar = tk.StringVar()
                
    def _create_widgets(self):
        entry_w = tk.Entry(textvariable=self.textvar)
Die Fehlermeldung ist:
AttributeError: 'XYZ' object has no attribute 'textvar'
Eine Variable, die in der Init-Funktion mit self.xxx angelegt wurde, wird von "textvariable=" nicht akzeptiert und ich kapiere nicht, warum das so ist.

Kann mir von Euch jemand helfen?
BlackJack

@Papp Nase: Das kann eigentlich nur passieren wenn die `__init__()` nicht aufgerufen wurde. In der steht auch gar kein Aufruf von `_create_widgets()` in Deinem Beispiel, was mich vermuten lässt dass das gar nicht der Code ist der zu dem Fehler führt. Es macht nicht so viel Sinn Code zu zeigen der nicht zum Fehler passt.
Antworten