In Python ein anderes Fenster in tkinter öffnen?

1 Antwort

import Tkinter as tk

def create_window():
    window = tk.Toplevel(root)

root = tk.Tk()
b = tk.Button(root, text="Create new window", command=create_window)
b.pack()

root.mainloop()
Woher ich das weiß:Studium / Ausbildung – Informatikstudent
tyronalpha 
Fragesteller
 19.11.2019, 19:37

Ja, dann öffnet sich allerdings es in den Fenster, und der Button bleibt erhalten. Wenn man dann wieder darauf klickt, wird es verbuggt.

0
regex9  19.11.2019, 22:37
@tyronalpha

Das obige Snippet macht eigentlich genau das, wonach du gefragt hast (einzige Änderung sollte für Python 3 sein: tkinter statt Tkinter). Was du hier als Bug definierst und was du genau möchtest, wenn nicht das, müsstest du wohl nochmal genauer erklären.

0
Brockdish  19.11.2019, 19:38

Was bedeutet Fenster.mainloop und as?

0
regex9  19.11.2019, 22:30
@Brockdish
  • as leitet einen Alias ein, unter dem die Elemente des eingebundenen Moduls künftig ansprechbar sind
  • mainloop startet die Tkinter Event Loop. Das ist im Prinzip eine Endlosschleife, die je Iteration empfangene GUI Events abfängt und bearbeitet.
0