📜  tkinter 隐藏小部件 - Python (1)

📅  最后修改于: 2023-12-03 15:05:36.310000             🧑  作者: Mango

tkinter 隐藏小部件

当我们在使用 tkinter 创建 GUI 界面时,有时候需要动态地隐藏或显示某个小部件,这时候就需要用到相关的方法。

1. 隐藏小部件

当我们需要隐藏一个小部件时,可以使用 .grid().place().pack() 方法中的任何一个,并将参数 rowcolumnside 设置为 -1,如下所示:

import tkinter as tk

root = tk.Tk()

label = tk.Label(root, text="Hello, World!")
label.pack()

button = tk.Button(root, text="Hide Label", command=lambda: label.pack_forget())
button.pack()

root.mainloop()

在上面的代码中,我们通过 tk.Label 创建一个标签,然后使用 .pack() 方法将其显示出来。接着,我们通过 tk.Button 创建一个按钮,并使用 .pack() 方法将其显示出来。当按钮被点击时,我们调用 label.pack_forget() 方法来隐藏标签。

2. 显示小部件

当我们需要显示一个已经隐藏的小部件时,只需再次调用 .grid().place().pack() 方法即可,如下所示:

import tkinter as tk

root = tk.Tk()

label = tk.Label(root, text="Hello, World!")
label.pack()

button_hide = tk.Button(root, text="Hide Label", command=lambda: label.pack_forget())
button_hide.pack()

button_show = tk.Button(root, text="Show Label", command=lambda: label.pack())
button_show.pack()

root.mainloop()

在上面的代码中,我们同样通过 tk.Label 创建了一个标签,接着使用 .pack() 方法将其显示出来。然后,我们创建了两个按钮,一个用于隐藏标签,另一个用于显示标签。当我们点击“隐藏标签”按钮时,标签就会被隐藏起来;而当我们点击“显示标签”按钮时,标签又会重新显示出来。

总结

在 tkinter 中隐藏小部件可以使用 .grid().place().pack() 方法,将参数 rowcolumnside 设置为 -1 即可。相应地,将其显示出来也只需要再次使用相应的方法即可。