如何在不使用 .place 的情况下临时移除 Tkinter 小组件?


要在框架或画布内放置 Tkinter 小组件,可以使用各种几何管理器。几何管理器允许你设置小组件的布局以及它们在 Tkinter 窗口中显示的方式。place() 方法是最简单的几何管理器之一,用于相对地明确设置小组件相对于窗口的位置。我们还可以使用 place() 方法来分离小组件,因为它支持相对于其他小组件定位小组件的相对属性。

在某些情况下,如果你想从应用程序中暂时移除某个特定小组件,可以使用 place_forget() 方法。你还可以对各种几何管理器使用 pack_forget()grid_forget() 方法来暂时从应用程序中移除小组件。我们可以举一个例子来理解其实际用例。

示例

# Import the library
from tkinter import *

# Create an instance of window
win=Tk()

# Set the geometry of the window
win.geometry("700x300")

def forget_label():
   label.place_forget()

# Create a label widget
label=Label(win, text="This is a new Label text", font='Arial 17 bold')
label.place(relx=0.5, rely=0.2, anchor=CENTER)

# Create a button
button=Button(win, text="Remove It", command=forget_label)
button.place(relx=0.5, rely=0.5, anchor=CENTER)

win.mainloop()

输出

运行上述代码将显示一个带标签小组件和按钮的窗口。

每当按“移除”按钮时,它会从窗口中移除标签小组件。

更新于: 2021-12-22

907 次浏览

开启你的职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.