Text-Element

Fragen zu Tkinter.
Antworten
karsten k
User
Beiträge: 18
Registriert: Dienstag 12. August 2008, 19:25

Freitag 15. August 2008, 17:04

Hallo!!
Wie kann ich Text in ein Text-Element einfügen? "textbox.insert(END,'hallo') ist mir bekannt, funktioniert aber nicht *heul*

Code: Alles auswählen

import Tkinter as tk

def test():
    output.insert(END, 'hallo')
    

root = tk.Frame(width=60, height=80)
output = tk.Text(root, width=60, height=20)
button = tk.Button(root, text="bla", command=test)

root.pack()
output.pack()
button.pack()
root.mainloop()
Woran könnte dass liegen!?

gruß
Sage nie, was du weisst. Aber wisse stets, was du sagst!
Benutzeravatar
wuf
User
Beiträge: 1497
Registriert: Sonntag 8. Juni 2003, 09:50

Freitag 15. August 2008, 17:16

Hallo karsten k

Hier die Loesung:

Code: Alles auswählen

import Tkinter as tk

def test():
    #~~ Falsch -> output.insert(END, 'hallo')
    #~~ 1. Moeglichkeit
#    output.insert(tk.END, 'hallo')
    #~~ 2. Moeglichkeit
    output.insert('end', 'hallo')
   

root = tk.Frame(width=60, height=80)
output = tk.Text(root, width=60, height=20)
button = tk.Button(root, text="bla", command=test)

root.pack()
output.pack()
button.pack()
root.mainloop()
Gruss wuf :wink:
Take it easy Mates!
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Freitag 15. August 2008, 17:41

karsten k hat geschrieben:Woran könnte dass liegen!?gruß
Lösung hat wuf ja schon gepostet. Ergänzend noch eine kleine Erläuterung dazu:

Die meisten (fast alle) Tkinter-Konstanten liegen in zwei Fassungen vor:
- als Bezeichner, mit Großbuchstaben geschrieben
- als Zeichenkette, klein geschrieben (wobei Tkinter hier recht tolerant ist, wenn ich mich recht erinnere)

Du hattest die erste Variante gewählt, aber nicht bedacht, dass du - vernünftigerweise! - Tkinter jetzt nicht mehr mittels Sternchenimport eingebunden hast, sondern unter dem Namen tk. Das musst du dann bei Verwendung der Konstanten auch mit verwenden, sonst wird im aktuellen Namensraum nach einem Objekt mit dem Namen END gesucht - und das war nicht vorhanden.
karsten k
User
Beiträge: 18
Registriert: Dienstag 12. August 2008, 19:25

Freitag 15. August 2008, 22:14

Hallo!
Vielen dank, damit ist mir schon viel geholfen :wink:
Sage nie, was du weisst. Aber wisse stets, was du sagst!
Antworten