【问题标题】:Creating Textboxes dynamically in tkinter在 tkinter 中动态创建文本框
【发布时间】:2018-07-28 04:01:03
【问题描述】:

我正在尝试使用按钮创建多行文本框。每次按下按钮时,都会出现一个带有四个文本框的新行。我尝试使用函数来执行此操作并将行数存储在变量中,但是在创建行后我无法更新变量。同样在创建了必要的行之后,我必须从文本框中获取数据。我该如何完成这项工作?

【问题讨论】:

    标签: python python-2.7 user-interface tkinter tk


    【解决方案1】:

    下面的示例生成一个 GUI,每次按下按钮时都会生成 4 个条目:

    try:                        # In order to be able to import tkinter for
        import tkinter as tk    # either in python 2 or in python 3
    except ImportError:
        import Tkinter as tk
    
    
    def add_four_entries():
        global root, my_list_of_entries
        for _ in range(4):
            my_list_of_entries.append(tk.Entry(root))
            my_list_of_entries[-1].pack()
    
    
    if __name__ == '__main__':
        root = tk.Tk()
        my_list_of_entries = list()
        tk.Button(root, text="Add 4 more", command=add_four_entries).pack()
        tk.mainloop()
    

    【讨论】:

    • 虽然您的回答并没有完全解决问题中所述的问题,但它让我对如何解决问题有了一个想法。我使用多维数组来存储盒子。谢谢@Nae
    • @Ubi 怎么没有准确解决这个问题?
    • 我需要电子表格形式的二维文本框,您的代码会创建一列文本框。而且我还需要从文本框的二维网格中获取所有值。
    猜你喜欢
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 2012-10-28
    • 1970-01-01
    • 2019-02-22
    • 2013-09-27
    相关资源
    最近更新 更多