Seite 1 von 1

OptionMenu Problem [gelöst]

Verfasst: Samstag 14. Oktober 2006, 13:46
von Seddy
Ich habe ein Problem mit der Funktion OptionMenu.
Wenn ich sie im Haupfenster starte geht alles gut,
aber wenn ich sie in einem anderen Fenster starte funktioniert sie nicht mehr.
Beispiel wo es zu Problem kommt:

Code: Alles auswählen

from Tkinter import *

def fenster2():
	root=Tk()
	root.title("Fenter 2")
	var1=StringVar()
	var1.set("1")
	var2=OptionMenu(root,var1,"1","2","3")
	var2.pack()
	root.mainloop()

root=Tk()
root.title("Hauptfenster")
but1 = Button(root,text="Fenster 2 zeigen",command=lambda:fenster2(),overrelief="groove")
but1.pack()	
root.mainloop()
Beispiel nochmal, diesmal die funktionierende Version:

Code: Alles auswählen

from Tkinter import *

def fenster2():
	root=Tk()
	root.title("Fenter 2")
	var1=StringVar()
	var1.set("1")
	var2=OptionMenu(root,var1,"1","2","3")
	var2.pack()
	root.mainloop()
	
fenster2()

root=Tk()
root.title("Hauptfenster")
but1 = Button(root,text="Fenster 2 zeigen",command=lambda:fenster2(),overrelief="groove")
but1.pack()	
root.mainloop()
Bei der ersten Version kann man im OptionMenu nichts auswählen,
woran könnte das liegen?

EDIT:
Problem hat sich erledigt.
So funktioniert alles einwandfrei:

Code: Alles auswählen

from Tkinter import *

def fenster2():
    root=Toplevel()#Das war der einzige Fehler
    root.title("Fenter 2")
    var1=StringVar()
    var1.set("1")
    var2=OptionMenu(root,var1,"1","2","3")
    var2.pack()
    root.mainloop()

root=Tk()
root.title("Hauptfenster")
but1 = Button(root,text="Fenster 2 zeigen",command=lambda:fenster2(),overrelief="groove")
but1.pack()   
root.mainloop()