2017-03-15 3 views
-1

Vielen Dank für Ihre Hilfe! Mit diesem Code kann ich jetzt das Textfenster aufrufen. Aber ich bin nicht in der Lage, in die While-Schleife zu kommen.Beim Ausführen des folgenden Snippets erhalte ich einen Fehler

Wenn ich den Code wie folgt ändern, wird das Textfenster nicht angezeigt. Bitte, bitte, lass mich wissen, wie ich hier weitermachen kann.

from tkinter import * 
root = Tk() 
T = Text(root, height=2, width=30) 
T.pack() 
T.insert(END, "Just a text Widget\nin two lines\n") 
while(1): 
    print("inside for loop") 
    T.insert(END, "foo") 
    T.see(END) 
root.mainloop() 
+0

Traceback (jüngste Aufforderung zuletzt): Datei "C: \ Benutzer \ jee11 \ Arbeitsplatz \ Hallo \ jeeva \ hallo \ text_pad.py", Zeile 14, in T.insert (END "TEST") Datei "C: \ Python \ lib \ tkinter \ __ init__.py", Zeile 3266, in Einfügung self.tk.call ((self._w, 'einfügen', index, Zeichen) + args) _tkinter.TclError: ungültiger Befehlsname ".! text" – Jeeva

+0

Korrigieren Sie die Code-Hervorhebung bitte. Füge einfach 4 Leerzeichen vor deinem Code ein und mache einen Einzug. –

Antwort

2

Für die Zukunft: beheben Sie bitte Ihre Code-Formatierung und setzen Tracebacks in Frage, nicht als unformatierte Kommentar (Einzüge matters!).

In Bezug auf Ihren Fehler: Es wird verursacht, weil Sie 10 nach mainloop() aufrufen. Sie erreichen diesen Punkt im Code, nachdem der Haupt-Loop abgeschlossen ist (z. B. wenn Sie das Fenster schließen). Da es keinen Textbereich mehr gibt, in den etwas eingefügt werden kann, passiert dieser seltsame Fehler.

Abgesehen davon, suchen Sie wahrscheinlich, if __name__=='__main__': zu tun.

Verwandte Themen