首页 > 解决方案 > Tkinter - Trace.() 不使用变量

问题描述

我试图在这里设置两个相互交互的字段。在这种情况下,我正在寻找的是使用变量“code”,该变量将写入 code_entry 中,然后,我将使用此代码从 sql 数据库中获取描述。问题是当我写任何数字时它什么都不做,有什么问题?

    def frame_basic_info_widgets():
        pm_master_var   = tk.StringVar(frame_basic_info,"0")
        size            = tk.StringVar(frame_basic_info,"")
        series          = tk.StringVar(frame_basic_info,"")
        colour          = tk.StringVar(frame_basic_info,"")
        code            = tk.IntVar(frame_basic_info,0)
        global product_description
        product_description = tk.StringVar(frame_basic_info,"No Product Selected")
        n               = 0
        product_master_fields = {"Size"   :"Product Size",
                                 "Series" :"Product Series",
                                 "Colour" :"Product Colour"}

        code_entry = tk.Entry(frame_basic_info,textvariable = code,bg="light grey").grid(row=0,column=0,pady=20,padx=20)
        product_label = tk.Label(frame_basic_info,textvariable = product_description,bg="light grey").grid(row=0,column=1,pady=20,padx=20)

        def change_product_description():
            print(code.get())
            product_description = pd.read_sql_query('SELECT product_description FROM Product_Master WHERE id = '+code.get(), engine)
            product_label.update()
            print(product_description)

        product_description.trace("w",change_product_description)

'''

标签: pythontkinter

解决方案


推荐阅读