【发布时间】:2021-04-09 02:40:34
【问题描述】:
我一直在努力寻找可以实际运行的示例代码,但一直很困难。我正在尝试在 kivy 中找到可以帮助我显示表格然后允许用户更改它然后导出到文本文件的代码。这是我找到的示例代码。在这段代码中,我不断收到错误,object.init() 只接受一个参数(要初始化的实例)。
from kivymd.uix.datatables import MDDataTable
from kivymd.app import MDApp
from kivy.uix.screenmanager import Screen, ScreenManager
from kivy.metrics import dp
from kivymd.uix.button import MDRectangleFlatButton
class Manager(ScreenManager):
def __init__(self, **kwargs):
super().__init__(**kwargs)
class SecondScreen(Screen):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.table = MDDataTable(
orientation = "lr-tb",
size_hint=(0.9, 0.6),
use_pagination=True,
check=True,
column_data=[
("No.", dp(30)),
("Column 1", dp(30)),
("Column 2", dp(30)),
("Column 3", dp(30)),
("Column 4", dp(30)),
("Column 5", dp(30)),
],
row_data=[
(f"{i + 1}", "2.23", "3.65", "44.1", "0.45", "62.5")
for i in range(50)
],
)
def on_enter(self):
self.table.open()
class FirstScreen(Screen):
def __init__(self, **kwargs):
super().__init__(**kwargs)
def change_screen(self):
self.manager.current = "Second"
class TestApp(MDApp):
def build(self):
self.window_manager = Manager()
self.first_screen = FirstScreen(name="First")
self.sample_screen = SecondScreen(name="Second")
self.window_manager.add_widget(self.first_screen)
self.window_manager.add_widget(self.sample_screen)
return self.window_manager
app = TestApp()
app.run()
有人知道这里发生了什么吗?预先感谢您的帮助。 完整的错误日志: 回溯(最近一次通话最后): 文件“/Users/me/Documents/Kivy Project/Table.py”,第 57 行,在 应用程序 = 测试应用程序(自我) NameError: name 'self' 未定义
进程以退出代码 1 结束
【问题讨论】:
-
哪一行出现错误?
-
请提供完整的错误日志