python - AttributeError:“应用程序”对象没有属性“tunes_list”
问题描述
我正在尝试创建一个应用程序,允许我为我玩的游戏生成曲调。但无论如何,我的目标是从 sqlite3 数据库保存和加载数据。但实际上发生的是:
Traceback (most recent call last):
File "d:\Visual Studio\DRIFT_TUNER\gui.py", line 360, in <module>
app = Application(master=root)
File "d:\Visual Studio\DRIFT_TUNER\gui.py", line 16, in __init__
self.populate_list()
File "d:\Visual Studio\DRIFT_TUNER\gui.py", line 350, in populate_list
self.tunes_list.delete(0, tk.END)
AttributeError: 'Application' object has no attribute 'tunes_list'
当我调用这样的函数时会发生这种情况populate_list()
:
def populate_list(self):
self.tunes_list.delete(0, tk.END)
for row in db.fetch():
self.tunes_list.insert(tk.END, row)
这是我的两个文件的 Pastebins:
gui.py
:https
db.py
: //pastebin.com/aJ5qAwtS:https: //pastebin.com/mp3RnVK2
populate_list()
应该清除列表框中的文本,然后从数据库中获取数据并将该数据逐行插入到列表框中。我将 Python 3.9.5 与 tkinter 和 sqlite3 一起使用。
我尝试过的事情:
- 将所有缩进转换为空格,并将所有空格转换为缩进。
- 重新声明
tunes_list
我首先不完全知道这个错误意味着什么,所以任何帮助都会很好。
解决方案
self.tunes_list = tk.Entry()
您可以通过添加您的或 idk来解决此问题,__init__
无论您的 tunes_list 是什么
推荐阅读
- c++ - 如何将代码点转换为 utf-8?
- python - 如何使用其 REST API 在 Jupyter Hub 中启动笔记本服务器?
- c# - 如何在 C# 中使用 Selenium 发送密钥“和”?
- java - 如何使导航抽屉中的开关具有功能?
- linux-device-driver - 如何使设备(以太网)使用特定的驱动程序(用户制作的网络驱动程序)
- excel - 为什么分配给单元的宏会失败?
- python - 将列表中的字符串添加到一起
- flutter - 用户登录后不会出现 WebView
- laravel-5 - ReflectionException 类电子邮件不存在 php artisan queue:work
- tensorflow - SSD 盗梦空间 v2。VGG16 特征提取器是否被 Inception v2 取代?