Hallo zusammen
Mein Problem ist, daß ich von meinem Hauptfenster ein zweites Fenster öffne, um damit zu arbeiten.
Im zweiten Fenster ist eine Listbox, die das Auswahlkriterium an ein Testfenster das mit grid erstellt ist, weiter geben soll.
Wenn ich das zweite Fenster direkt starte, also nicht über das Hauptfenster, funktioniert alles prima.
Starte ich das zweite Fenster über das Hauptfenster, so öffnet sich zwar dieses, aber die Datenübergabe aus der Listbox an das Textfenster funktioniert nicht.
Ich habe dazu 3 Dateien. Das erste ist das Hauptfenster die 'start_gui.py', mit 3 Buttons die jeweils die Datei 'gui_listbox_work.py' ansteuert, das zweite Fenster. Die dritte Datei ist die 'gui_list_names.py', die Daten an das zweite Fenster übergibt.
Damit Ihr selbst testen könnt was ich meine, könnt Ihr die 3 Dateien hier https://gist.github.com/4046428 anschauen und testen.
Könnt Ihr mir sagen, warum dies so nicht funktioniert, obwohl beim direkten Starten von 'gui_listbox_work.py' dies funktioniert?
Welche Möglichkeiten habe ich, um das Problem zu lösen?
Grüße Nobuddy
KeinE Funktion bei zweitem Fenster
Hi Nobuddy
Jetzt ist es wieder übersichtlicher. In einem Tkinter Skript darfst du tk.Tk() nur einmal aufrufen um mit dem Hauptfenster zu beginnen. Für weitere Fenster musst du das Toplevel Widget verwenden. Somit ist die Modifikation very simple. Ersetze in der Datei gui_listbox_work.py die Zeile:durch
die Methode run:
braucht es nicht mehr.
Gruß wuf
Jetzt ist es wieder übersichtlicher. In einem Tkinter Skript darfst du tk.Tk() nur einmal aufrufen um mit dem Hauptfenster zu beginnen. Für weitere Fenster musst du das Toplevel Widget verwenden. Somit ist die Modifikation very simple. Ersetze in der Datei gui_listbox_work.py die Zeile:
Code: Alles auswählen
self.root = tk.Tk()Code: Alles auswählen
self.root = tk.Toplevel()Code: Alles auswählen
def run(self):
self.root.mainloop()Gruß wuf
Take it easy Mates!
