ich habe eine Oberfläche, von der ich eine weitere Oberfläche mit Hilfe eines Buttons starte. Im zweiten Fenster möchte ich verschiedene Auswertungen darstellen. Komischerweise werden nur "normale" Labels, nicht aber die StringVar-Labels angezeigt. Starte ich das Fenster direkt geht es.
Noch etwas: wie kann ich verhindern, dass bei neuerlichem "Klick" eine weitere Instanz des Fensters aufgeht, wenn eine erste schon da ist?
Für einen Hinweis wär ich dankbar. Hier der Code:
Code: Alles auswählen
from Tkinter import *
class Eins(object):
def __init__(self):
self.fenster = Tk()
self.button=Button(self.fenster,text="Klick",command=self.klick)
self.button.pack()
self.fenster.mainloop()
def klick(self):
a=Statistik()
class Statistik(object):
def __init__(self):
self.fenster = Tk()
self.frame_info = Frame(self.fenster,relief=RIDGE,bd=2)
self.frame_info.grid(column=0,row=1,padx=5,pady=5)
self.frame_stat = Frame(self.frame_info,relief=RIDGE,bd=2)
self.frame_stat.grid(column=0,row=0,padx=5,pady=5)
self.label_tti = Label(self.frame_stat,text="Gesamt: ")
self.label_tti.grid(column=0,row=0,padx=5,pady=5)
self.cvar_tt = StringVar()
self.cvar_tt.set("##")
self.label_tt = Label(self.frame_stat,textvariable=self.cvar_tt)
self.label_tt.grid(column=1,row=0,padx=5,pady=5)
self.label_wini = Label(self.frame_stat,text="Gewinner: ")
self.label_wini.grid(column=0,row=1,padx=5,pady=5)
self.cvar_win = StringVar()
self.cvar_win.set("##")
self.label_win = Label(self.frame_stat,textvariable=self.cvar_win)
self.label_win.grid(column=1,row=1,padx=5,pady=5)
self.fenster.mainloop()
e=Eins()
s=Statistik()