Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Builder.load从python向kv fille发送字符串_Python_Kivy_Kivy Language_Kivymd - Fatal编程技术网

如何使用Builder.load从python向kv fille发送字符串

如何使用Builder.load从python向kv fille发送字符串,python,kivy,kivy-language,kivymd,Python,Kivy,Kivy Language,Kivymd,如何将kv文件中的self.username用作MDToolbar的标题。 下面是python代码 class GipApp(MDApp): def build(self,username): self.theme_cls.primary_palette = 'Blue' screen = Builder.load_string(screen_helper) self.username = "unknown" self.usernameK

如何将kv文件中的self.username用作MDToolbar的标题。 下面是python代码

   class GipApp(MDApp):
def build(self,username):
    self.theme_cls.primary_palette = 'Blue'
    screen = Builder.load_string(screen_helper)
    self.username = "unknown"
    self.usernameKV = "unknown"
    return screen


def verify(self, username, password):
    if username != "" and password != "":
        for row in MySqlNames:
            if row[0].strip() == username:
                sql = "SELECT Password from ID191774_6itn1project7.Users where Username = %s "
                mycursor.execute(sql, (username))
                TestPassword = mycursor.fetchall()
                for row3 in TestPassword:
                    if row3[0].strip() == password:
                        dialog = MDDialog(title="Login successful")
                        dialog.open()
                        self.username = username
                        GipApp.get_running_app().root.current = 'main'
我想在下一个kivy代码中使用self.username中的新值作为标题

<MainScreen>:
canvas.before:
    Rectangle:
        pos: self.pos
        size: self.size
        source: 'mountains.jpg'
name: 'main'
NavigationLayout:
    ScreenManager:
        Screen:    
            orientation: 'vertical'
            MDToolbar:
                title: ?????????
                left_action_items:[["menu",lambda x: nav_drawer.toggle_nav_drawer()]]
                elevation :12
                pos_hint:{"center_x": .5, "center_y": .95}
:
在以下情况之前:
矩形:
pos:self.pos
大小:self.size
资料来源:“mountains.jpg”
名称:'main'
导航布局:
屏幕管理器:
屏幕:
方向:“垂直”
MDToolbar:
标题:?????????
左键动作项:[[“菜单”,lambda x:nav_抽屉。切换导航抽屉()
立面图:12
pos_提示:{“center_x”:.5,“center_y”:.95}

我希望有人能帮我解决这个问题。

因为代码片段的格式很奇怪,我不确定,但我建议将username设置为字符串属性,如下所示

将kivy.properties导入为kypros

username=kypros.StringProperty()

我不会在“build”函数中声明它,而是在GipApp类中声明(我假设verify和build是这个类中的方法),然后在.kv文件中设置它时,执行以下操作:
title:root.username
。我希望这会有所帮助,但我不是100%确定,因为代码片段的格式太糟糕了。干杯