简体   繁体   English

在kivy上添加新按钮和屏幕时出错

[英]Error when adding new buttons and screens on kivy

My python file is 我的python文件是

from kivy.app import App
from kivy.lang import Builder 
from kivy.uix.screenmanager import ScreenManager, Screen, FadeTransition
from kivy.uix.widget import Widget
from kivy.graphics import Line


class MainScreen(Screen):
    pass
class TaskScreen(Screen):
    pass
class DefrostScreen(Screen):
    pass
class ScreenManagement(ScreenManager):
    pass
presentation = Builder.load_file("main3.kv")

class MainApp(App):
    def build(self):
        return presentation

if __name__ == "__main__":
    MainApp().run()

my kv file is 我的kv文件是

#: import FadeTransition kivy.uix.screenmanager.FadeTransition

ScreenManagement:
    transition: FadeTransition()
    MainScreen:
    TaskScreen:
    DefrostScreen:

<MainScreen>:
    name:"main"
    Button:
        on_release: app.root.current = "Tasks"
        text: "Tasks"
        font_size: 25
        size_hint:0.3,0.2
        pos_hint:{"left":1,"top":1}
    Button:
        on_release: app.root.current = "Defrost"
        text: "defrost"
        font_size: 25
        size_hint:0.3,0.2
        pos_hint:{"left":1,"top":0.8}

<TaskScreen>:
    name: "Tasks"
    FloatLayout:
        Button:
            color: 0,1,0,1
            font_size: 25
            size_hint: 0.3,0.2
            text: "back home"
            on_release: app.root.current = "main"
            pos_hint: {"right":1, "top":1}
<DefrostScreen>:
    name: "Defrost"
        Button:
            color: 0,1,0,1
            font_size: 25
            size_hint: 0.3,0.2
            text: "back home"
            on_release: app.root.current = "main"
            pos_hint: {"right":1, "top":1}

and the error when I run my python file is 和我运行我的python文件时的错误是

Traceback (most recent call last):
   File "main3.py", line 16, in <module>
     presentation = Builder.load_file("main3.kv")
   File "C:\python34\lib\site-packages\kivy\lang.py", line 1842, in load_file
     return self.load_string(data, **kwargs)
   File "C:\python34\lib\site-packages\kivy\lang.py", line 1889, in load_string
     parser = Parser(content=string, filename=fn)
   File "C:\python34\lib\site-packages\kivy\lang.py", line 1264, in __init__
     self.parse(content)
   File "C:\python34\lib\site-packages\kivy\lang.py", line 1366, in parse
     objects, remaining_lines = self.parse_level(0, lines)
   File "C:\python34\lib\site-packages\kivy\lang.py", line 1529, in parse_level
     if current_property[:3] == 'on_':
 TypeError: 'NoneType' object is not subscriptable
Press any key to continue . . .

It worked when I used sentdex's tutorial but I wanted to adapt it so i could use it and now it comes up with this error 当我使用senddex的教程时,它工作,但我想调整它,所以我可以使用它,现在它出现了这个错误

send help please 请发送帮助

你有错误的缩进 - name: "Defrost"Button:应该有相同的缩进。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM