проблема с выполнением бэкэнда sqlite3 в моем интерфейсе tkinter - PullRequest
0 голосов
/ 22 марта 2019

Я делаю простую программу, в которую я могу вставлять или сохранять данные в пользовательском интерфейсе, а затем просматривать вставленные данные в tkinter, но проблема в том, что я не знаю, как это сделать в своем коде внешнего интерфейса.спасибо заранее import datab мой бэкэнд, который находится в sql.

from tkinter import *
import datab


class main(Frame):
    def __init__(self, *args, **kwargs):
        Frame.__init__(self, *args, **kwargs)

        but = Button(self, text="input", command=self.butin)
        but.grid()
        but2 = Button(self, text="output", command=self.butout)
        but2.grid()

    def butin(self):
        textV1 = StringVar()
        g = Toplevel()
        inbut = Button(g, text="save", command=self.add_d)
        inbut.grid()
        enbox = Entry(g, textvariable=textV1)
        enbox.grid()

    def butout(self):
        h = Toplevel()
        shobut = Button(h, text="show", command=self.view_D)
        shobut.grid()
        sholab = Label(h, text="")
        sholab.grid()

    def add_d(self):
        datab.schedinsert(self.enbox.get())

    def view_d(self):
        datab.schedview(self.sholab.get())

if __name__ == '__main__':
    root = Tk()
    g = main(root)
    g.grid()
    g.mainloop()

Я думаю, что это проблема, я не уверен, что мои def add_d(self): и def view_d(self): верны.

def add_d(self):
    datab.schedinsert(self.enbox.get())

def view_d(self):
    datab.schedview(self.sholab.get())

и ошибка, которая появляется

*File "C:/Users/win8.1/PycharmProjects/data/basedatabase/mainprogram.py", line 
30, in add_d
datab.schedinsert(self.enbox.get())
AttributeError: 'main' object has no attribute 'enbox'
File "C:/Users/win8.1/PycharmProjects/data/basedatabase/mainprogram.py", line 
33, in view_d
datab.schedview(self.sholab.get())
AttributeError: 'main' object has no attribute 'sholab'*
...