pack: NameError: name 'LEFT' is not defined

Fragen zu Tkinter.
Antworten
egerlach
User
Beiträge: 43
Registriert: Samstag 14. März 2009, 21:32

Hallo,
warum geht w.pack(side=LEFT) hier nicht:

Code: Alles auswählen

import Tkinter as tk
root=tk.Tk()
w = tk.Label(root, text="Red", bg="red", fg="white")
w.pack(side=LEFT)
w = tk.Label(root, text="Green", bg="green", fg="black")
w.pack(side=RIGHT)
mainloop()
Fehlermeldung: pack: NameError: name 'LEFT' is not defined

Hier aber gehts! Mit "from Tkinter import *" anstelle "import Tkinter als tk" usw:
root = Tk()

Code: Alles auswählen

from Tkinter import *
root = Tk()
w = Label(root, text="Red", bg="red", fg="white")
w.pack(side=LEFT)
w = Label(root, text="Green", bg="green", fg="black")
w.pack(side=RIGHT)
mainloop()
Gruss
Eckard
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Code: Alles auswählen

import Tkinter as tk
root=tk.Tk()
w = tk.Label(root, text="Red", bg="red", fg="white")
w.pack(side=tk.LEFT)
w = tk.Label(root, text="Green", bg="green", fg="black")
w.pack(side=tk.RIGHT)
mainloop() 
Wenn du das Paket als "tk" importierst, dann musst du auch _alle_ Namen mit tk.NAME ansprechen anstatt mit NAME.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

*-Imports sollte man eigentlich soweit möglich meiden.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten