Hoe een nieuw venster te maken door op een knop in Tkinter te klikken

In deze tutorial laten we u zien hoe u een nieuw Tkinter-venster maakt en opent door op een knop in Tkinter te klikken.

Maak een nieuw Tkinter-venster

import tkinter as tk

def createNewWindow():
    newWindow = tk.Toplevel(app)

app = tk.Tk()
buttonExample = tk.Button(app, 
              text="Create new window",
              command=createNewWindow)
buttonExample.pack()

app.mainloop()

Normaal gebruiken tk.Tk() we om een ​​nieuw Tkinter-venster te maken, maar het is niet geldig als we al een root-venster hebben gemaakt zoals getoond in de bovenstaande codes.

Toplevel is in deze omstandigheid de juiste widget omdat de Toplevel widget bedoeld is om extra pop-up vensters weer te geven.

buttonExample = tk.Button(app, 
              text="Create new window",
              command=createNewWindow)

Het bindt de createNewWindow functie aan de knop.

Het nieuwe venster is een leeg venster in het bovenstaande voorbeeld en je kan er meer widgets aan toevoegen, net zoals het toevoegen van widgets in een normaal hoofdvenster, maar u moet de bovenliggende widget wijzigen in het gemaakte Toplevel venster.

import tkinter as tk

def createNewWindow():
    newWindow = tk.Toplevel(app)
    labelExample = tk.Label(newWindow, text = "New Window")
    buttonExample = tk.Button(newWindow, text = "New Window button")

    labelExample.pack()
    buttonExample.pack()

app = tk.Tk()
buttonExample = tk.Button(app, 
              text="Create new window",
              command=createNewWindow)
buttonExample.pack()

app.mainloop()

Zoals je kon zien, labelExample en buttonExample hun ouderwidget als newWindow maar niet hebben app.

Gerelateerde Artikelen - Tkinter Button

  • Argumenten doorgeven aan Tkinter Button Command
  • Een Tkinter-venster sluiten met een knop
  • Hoe de status van de Tkinter-knop te wijzigen