如何在 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()
输出
当我们执行上述代码时,它将显示一个窗口,其中包含一个条目部件和一个用于打开新窗口的按钮。
在条目部件中输入一些内容,然后点击“确定”按钮,
广告