如何在 Tkinter 中建立子視窗並與父視窗通訊?


與其他 Python 庫不同,Tkinter 擁有許多用於建立完整應用程式的功能。它支援多個視窗操作和執行緒,用於在 Windows 上處理操作。

接下來,我們將建立一個應用程式,該應用程式將從根視窗提取資料並將其放入子視窗。子視窗的概念可以稱為對話方塊,在事件發生期間向用戶顯示一些資訊。在 Tkinter 中,使用 **Toplevel(root)** 建構函式可以非常輕鬆地建立子視窗。

示例

在這個示例中,我們將在主視窗中建立一個條目部件和一個按鈕。此外,按鈕將提取儲存在條目部件中的資料,並在新視窗或子視窗中顯示輸入值。

#Import tkinter library
from tkinter import *
from tkinter import ttk
#Create an instance of tkinter frame or window
win= Tk()
#Set the geometry of tkinter frame
win.geometry("750x250")
win.title("Main Window")
#Define a function to Open a new window
def open_win():
   child_win= Toplevel(win)
   child_win.title("Child Window")
   child_win.geometry("750x250")
   content= entry.get()
   Label(child_win, text=content, font=('Bell MT', 20, 'bold')).pack()
   win.withdraw()
#Create an Entry Widget
entry=ttk.Entry(win, width= 40)
entry.pack(ipady=4,pady=20)
#Let us create a button in the Main window
button= ttk.Button(win, text="OK",command=open_win)
button.pack(pady=20)
win.mainloop()

輸出

當我們執行上述程式碼時,它將顯示一個視窗,其中包含一個條目部件和一個用於開啟新視窗的按鈕。

在條目部件中輸入一些內容,然後點選“確定”按鈕,

更新於: 2021年4月22日

2K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告