如何在 Tkinter 中在两个框架之间切换?
在大多数情况下,你需要多个屏幕,以允许用户在你程序的不同片段之间切换。实现此目的的一种方法是创建位于主窗口内的单独框架。
A-Frame 组件用于在应用程序中对过多组件进行分组。我们可以在两个不同的框架中添加单独的组件。用户可以通过单击按钮从一个框架切换到另一个框架。
示例
在这个应用程序中,我们将创建一个单独的框架问候框架和订单框架。每个框架由两个不同的对象组成。一个按钮将用于在两个不同的框架对象之间进行切换。
# Import the required libraries from tkinter import * from tkinter import font # Create an instance of tkinter frame or window win = Tk() # Set the size of the window win.geometry("700x350") # Create two frames in the window greet = Frame(win) order = Frame(win) # Define a function for switching the frames def change_to_greet(): greet.pack(fill='both', expand=1) order.pack_forget() def change_to_order(): order.pack(fill='both', expand=1) greet.pack_forget() # Create fonts for making difference in the frame font1 = font.Font(family='Georgia', size='22', weight='bold') font2 = font.Font(family='Aerial', size='12') # Add a heading logo in the frames label1 = Label(greet, text="Hey There! Welcome to TutorialsPoint.", foreground="green3", font=font1) label1.pack(pady=20) label2 = Label(order, text="Find all the interesting Tutorials.", foreground="blue", font=font2) label2.pack(pady=20) # Add a button to switch between two frames btn1 = Button(win, text="Switch to Greet", font=font2, command=change_to_order) btn1.pack(pady=20) btn2 = Button(win, text="Switch to Order", font=font2, command=change_to_greet) btn2.pack(pady=20) win.mainloop()
输出
运行上述代码将显示一个包含两个不同框架的窗口。
可以使用其中定义的一个按钮在这些框架之间进行切换。
广告