Seite 1 von 1

checkbutton-problem

Verfasst: Donnerstag 24. Juni 2010, 22:42
von pythonstarter
Hallo,
das folgene script zeigt einen Checkbutton cb1 mit Text in frame1 an. Wenn das Fenster startet erscheint im frame3 nur ein Checkbutton ohne Text. Wenn ich cb1 anwähle, dann erscheint in frame3 der cb3 mit Text, wenn ich cb1 auf offvalue setzte, verschwindet bei cb3 der Text wieder - soweit alles wunderbar - aber nur, wenn ich das script als eigenes script, also nicht in Abhängigkeit vom "Hauptfenser" laufen lasse. Sobald ich vom Hauptfenstera aus "bewegen" aufrufe, funktioniert das Anzeigen und Ausblenden des Textes an cb3 nicht mehr (und das ärgert mich kollosal und schon seit vier Stunden) :x

Code: Alles auswählen

"""bewegen wird vom Haupfenster aus aufgerufen"""
def bewegen():
    bewegen = tk.Tk()
    
    def ende():
        bewegen.destroy()

        
    def show():
        
        if b.get() == "1":
            cb3["text"] = "Lagerungswechsel"
        else:
            cb3["text"] = ""
            
            
    
    b = tk.StringVar()
    b.set(0)
    
    
    cb3 = tk.Checkbutton(frame3)
    cb3.grid()
    


    """Einrichten des Checkbuttons in Frame 1"""
    cb1 = tk.Checkbutton(frame1, text = "Widerstände", variable = b, onvalue = "1", offvalue = "0", command = show) 
    cb1.grid(row = 0, column = 0, sticky = "w")

Re: checkbutton-problem

Verfasst: Freitag 25. Juni 2010, 07:49
von BlackJack
@pythonstarter: Ein `Tk`-Exemplar darfst Du in einem Programm nur *einmal* erzeugen. Sowie es mehr als eins davon gibt, kommt `Tkinter` massiv durcheinander. Weitere Fenster müssen vom Typ `Tkinter.Toplevel` sein.

Re: checkbutton-problem

Verfasst: Sonntag 27. Juni 2010, 10:24
von pythonstarter
Vielen Dank - mit Toplevel hat's funktioniert