tkinter窗口切换

发布时间 2023-08-27 13:30:25作者: linux星

以下是使用tkinter实现窗口的创建、销毁和双向切换的示例代码:

 

```python

import tkinter as tk

 

class App:

    def __init__(self, root):

        self.root = root

        self.root.title("Tkinter窗口")

        self.root.geometry("300x200")

        self.create_widgets()

 

    def create_widgets(self):

        # 创建标签

        label1 = tk.Label(self.root, text="这是第一个窗口", font=("Arial", 16))

        label1.pack(pady=50)

 

        # 创建按钮

        button1 = tk.Button(self.root, text="切换到第二个窗口", command=self.switch_window)

        button1.pack(pady=100)

 

        # 创建第二个窗口

        self.second_window = tk.Toplevel(self.root)

        self.second_window.title("第二个窗口")

        self.second_window.geometry("300x200+{}+{}".format(self.root.winfo_screenwidth()//2-150, self.root.winfo_screenheight()//2-100))

 

        # 在第二个窗口中添加标签

        label2 = tk.Label(self.second_window, text="这是第二个窗口", font=("Arial", 16))

        label2.pack(pady=50)

 

        # 在第二个窗口中添加按钮

        button2 = tk.Button(self.second_window, text="切换回第一个窗口", command=self.switch_window)

        button2.pack(pady=100)

 

    def switch_window(self):

        if self.second_window.winfo_exists():

            self.second_window.destroy()

        else:

            self.create_widgets()

 

if __name__ == "__main__":

    root = tk.Tk()

    app = App(root)

    root.mainloop()

```

 

在这个示例中,我们创建了一个名为App的类,它包含了创建窗口、切换窗口的方法。在初始化方法中,我们创建了两个标签和一个按钮,并调用了create_widgets方法来创建这些组件。在create_widgets方法中,我们首先创建了第一个窗口中的标签和按钮,然后创建了第二个窗口,并在其中添加了标签和按钮。最后,我们定义了一个名为switch_window的方法,用于切换窗口。当点击按钮时,会调用这个方法来实现窗口的切换。