Text-Element

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

Text-Element

Beitragvon karsten k » 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: 1407
Registriert: Sonntag 8. Juni 2003, 09:50

Beitragvon wuf » 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

Re: Text-Element

Beitragvon numerix » 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

Beitragvon karsten k » 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!

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder