gpt4 book ai didi

python - 删除网格 Tkinter 中的某些行/列

转载 作者:太空宇宙 更新时间:2023-11-04 06:22:13 24 4
gpt4 key购买 nike

如果我在同一个框架中有多个行和列以及多个条目/标签小部件,是否可以只选择其中一个并将其删除,同时保留其他小部件。

例如

class Window():
def __init__(self):
self.root = Tk()
self.win1 = Frame(self.root)
entry1 = Entry(win1, row=1, column=1)
entry2 = Entry(win1, row=1, column=2)
label1 = Label(win1, row=1, column=3)

def main1(self):
label2 = Label(win1, row=1, column=4)
labeln = Label(win1, row=1, column=n)

然后我想从第 3 列开始删除,其中 n 可以是一个随机数。是否可以获取 grid_forget 并插入列数?行也可以吗?

更新:或者是否可以简单地返回到在 init 下创建的窗口并删除在 main1 下创建的窗口(但已在同一帧中创建)?

谢谢。

最佳答案

阅读 grid_remove 和 grid_forget 方法;这些将允许您从 View 中删除现有的小部件。您还可以销毁小部件,使它们消失。

自从我完成此操作以来已经有一段时间了(目前没有一台计算机可以用来创建示例),但我认为一个棘手的问题可能是您必须进入并明确设置网格行和/或列的高度、宽度或权重回零以回收空间。不过这是完全可行的。

您的另一种选择是通过方法或函数创建所有小部件。然后您可以很容易地销毁并重新创建所有小部件。这对用户来说可能不太愉快,因为整个 UI 都会“闪烁”。

关于python - 删除网格 Tkinter 中的某些行/列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11357988/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com