gpt4 book ai didi

python-3.x - 有没有办法克隆 tkinter 小部件?

转载 作者:行者123 更新时间:2023-12-05 08:41:54 25 4
gpt4 key购买 nike

我正在尝试创建小部件网格。这个小部件网格开始时是告诉我它们坐标的标签。然后我有一个将替换它们的按钮的起点和终点列表。假设我有一个从 (0, 0) 到 (0, 2) 的按钮,我从该位置移除标签并在该处放置一个具有正确行跨度的按钮。如果一个按钮将替换另一个按钮(不仅仅是标签),我创建一个框架,然后我想克隆该按钮作为更改父级的一种方式(我已经阅读过 tkinter 不可能)并添加框架的新按钮也是如此。然后框架将替换网格上的小部件(标签和旧按钮),按钮并排而不是重叠。

所以这个example image显示标签网格,然后是放置第一个按钮的位置,然后是第二个按钮的位置,以及并排显示两个按钮的结果框架。

对我来说最大的问题是必须删除第一个按钮并将其重新放置在网格上,因为无法更改小部件的父级。尽管我也欢迎在网格上并排放置按钮的更好想法。

最佳答案

没有直接克隆小部件的方法,但 tkinter 为您提供了一种方法来确定小部件的父级、小部件的类以及小部件的所有配置值。此信息足以创建副本。

它看起来像这样:

def clone(widget):
parent = widget.nametowidget(widget.winfo_parent())
cls = widget.__class__

clone = cls(parent)
for key in widget.configure():
clone.configure({key: widget.cget(key)})
return clone

关于python-3.x - 有没有办法克隆 tkinter 小部件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46505982/

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