微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法在tkinter中复制框架或条目?

如何解决有没有办法在tkinter中复制框架或条目?

我试图在tkinter中使用for循环和while循环复制一个条目 如果您不了解我,我想使用相同的变量制作一堆Entry e = Entry(root).pack()可以做到吗?还是不可能

解决方法

我过去实现此目的的方式是在循环之前创建一个列表,然后在循环内部按常规方式创建Entry,然后将其打包/网格化到您的框架中,但是您会添加,然后添加您的Entry返回列表,然后再次循环。这样,您仍然可以完全访问每个条目,但可以动态填充您的框架。

此方法适用于任何小部件。

def demo(self):
    self.tk_str_entries = []                                 # tk.StringVars list
    self.tk_entries = []                                     # tk.Entry list
    max_range = 10                                           # How many Entrys to make

    self.tk_demo_frame = tk.Frame(self.master)               # tk.Frame to hold Entrys

    for _ in range(max_range):                               # loop thru your range
        tk_str = tk.StringVar()                              # - create local tk.StringVar
        entry = tk.Entry(self.tk_demo_frame,textvariable=tk_str) # - create entry,link it to local StringVar
        self.tk_str_entries.append(tk_str)                   # - append StringVar to the list
        self.tk_entries.append(entry)                        # - append Entry to the list
        entry.pack()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。