Python 3.x 添加到数据库并显示在多列表框中
大家好,我正在尝试制作一个应用程序,它从一些tkinter输入框中获取数据,将它们添加到数据库中,并在tktreectrl的多列表框中显示它们。我尝试用于向数据库添加内容的代码是基于各种在线教程的,但所做的只是在数据库的最后一列中添加一个0。即使我使用DB Browser将值放入数据库,它们仍然不会显示在“多列表”框中。(这是完整的代码) 有什么想法吗 我做错了什么Python 3.x 添加到数据库并显示在多列表框中,python-3.x,sqlite,tkinter,Python 3.x,Sqlite,Tkinter,大家好,我正在尝试制作一个应用程序,它从一些tkinter输入框中获取数据,将它们添加到数据库中,并在tktreectrl的多列表框中显示它们。我尝试用于向数据库添加内容的代码是基于各种在线教程的,但所做的只是在数据库的最后一列中添加一个0。即使我使用DB Browser将值放入数据库,它们仍然不会显示在“多列表”框中。(这是完整的代码) 有什么想法吗 我做错了什么 谢谢Chris,你使用的textvariable错误。该值需要是一个特殊的Tkinter变量,例如StringVar。第二个是必须
谢谢Chris,你使用的
textvariable
错误。该值需要是一个特殊的Tkinter变量,例如StringVar
。第二个是必须对这些变量使用get
方法来获取值。例如:
firstNameVar = tkinter.StringVar()
...
txt_first = tkinter.Entry(..., textvariable=firstNameVar)
...
Firstname = firstNameVar.get()
...
您是否验证了在执行提交时,
Firstname
、姓氏
和标记
确实具有值?您是否验证了fetchall()
实际上返回的是一个非空结果?可能是Firstname等。。没有价值观。那么,我该怎么做才能让他们知道,有一天我假设你可以使用输入控件的textvariable,但是为了检索输入框的内容,我还需要做其他事情吗?是的,你可以使用textvariable。如果没有看到你的代码,我不可能猜出你做错了什么。条目小部件的代码是:txt_姓氏=tkinter.entry(窗口,textvariable=姓氏)其他条目的代码显然是相同的,只是有不同的文本变量。华夫,这是一行额外的代码根本没有帮助。如果您想添加更多代码,请编辑问题并添加一个完整的工作程序(也称为MCVE:我现在得到错误:文件“E:/Python/Competition/Competition.py”,第16行,FirstnameVar=tkinter.StringVar()文件“E:\Programs\Miniconda3\lib\tkinter\u init.py”,第287行,init变量。\uu init__(self,master,value,name)文件“E:\Programs\Miniconda3\lib\tkinter_init_u2;.py”,第215行,在init self中。\u tk=master.tk AttributeError:“NoneType”对象没有属性“tk”@TheEpicWaffle:您必须在创建变量之前创建根窗口。此站点已对此进行了询问和解答。
firstNameVar = tkinter.StringVar()
...
txt_first = tkinter.Entry(..., textvariable=firstNameVar)
...
Firstname = firstNameVar.get()
...