Проблемы с TkInter. Не могу взять данные для переменных

появился проблема в реализации изменения таблицы SQL с помощью GUI TKinter. При написании самого функционала проблем не было,всё работало, ведь всё вводилось через консоль. Сейчас мне надо брать значения из из окон Entry, беру с помощью .get(), но выдает ошибку: AttributeError: 'NoneType' object has no attribute 'get'

Ниже приведу пример моего кода на основе одной функции. Само собой объявление и расположение всех виджетов сделано.

nname = text1.get()
ngender = text2.get()
nage = text3.get()
nkind = text4.get()
nidfood = text5.get()
rowtoedit = text6.get()



with date:

    date.execute(""" 
        UPDATE Animal SET name=?,gender=?,age=?,kind=?,ID_Food=?
        WHERE ROWID =?""",
                 (nname,ngender,int(nage),nkind,int(nidfood),int(rowtoedit))
                 )
date.commit()
ntype = text7.get()
nFirm = text8.get()
nCost = int(text9.get())
nnamefood = text10.get()
rowtoedit1 = int(text11.get())
with date:



    date.execute(""" 
         UPDATE food SET Type=?,Firm=?,Cost=?,NameFood=?
         WHERE ROWID =?""",
                 (ntype, nFirm, nCost, nnamefood, rowtoedit1)
                 )
date.commit()

Ответы (1 шт):

Автор решения: Иоанн Федоренко

я вам посоветую перейти на customtkinter и помогу решить проблему.

    import tkinter as tk
    
    root = tk.Tk()
    list = []
    def submit():
        list.append(entryget.get())
    #Сейчас я инициализирую переменную которая берет значение виджета 
    tk.Entry. 
    entryget = tk.StringVar()
    #Если у вас циферный ввод используйте метод tk.IntVar()
    
    e = tk.Entry(root, textvariable=entryget)
    e.pack()

    b = tk.Button(root, text="Submit", command=submit)
    b.pack()
    
    root.mainloop()

Извините что описываю все на примере своего кода так как ваш непонятен и неполный. Тут суть в том что метод .get() нужно добавлять к переменным виджета а не к самому виджету. Надеюсь, ответ был полезным. Удачи в програмировании!

→ Ссылка