如何在kivy应用程序的KV文件中显示Python中的变量值

2024-09-30 08:33:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将函数label_title中的变量archon2_channel显示为MDLabel文本值。我试图使用StringProperty(var_name),也通过全局变量,没有运气。。。感谢您提供任何有助于解决此问题的想法和/或链接

我将此函数放置在App类中:

Python:

class DemoApp(MDApp):

    def build(self):
        self.theme_cls.primary_palette = "Green"
        self.theme_cls.theme_style = "Dark"
        self.standard_increment = STANDARD_INCREMENT
        self.load_all_kv_files(os.path.join(self.directory, "libs", "uix", "kv",))
        self.load_all_kv_files(os.path.join(self.directory, "libs", "uix", "uix_drawer", "kv"))
        self.root_widget = RootWidget()
        self.screen_manager = self.root_widget.ids.screen_manager
        self.nav_drawer = self.root_widget.ids.navigation_drawer
        return self.root_widget

    def label_title(self):
        url_archon2 = "http://weburrl"
        response_archon2 = requests.request("GET", url_archon2, headers=headers, data = "")
        archon2_channel = response_archon2.json()['items']['contentChannel']
        archon2_ticker = response_archon2.json()['items']['messageScheduleName']
        print(archon2_channel)
        print(archon2_ticker)
        return StringProperty(archon2_ticker)

DemoApp().run()

KV文件:

MDLabel
    text: app.archon2_channel
    size_hint_y: None
    height: self.texture_size[1]
    padding: 0, "20dp"
    halign: "center"
    theme_text_color: "Primary"

Tags: 函数selftitleresponsechannelrootwidgettheme
1条回答
网友
1楼 · 发布于 2024-09-30 08:33:12

嗯,这就是我所做的,我从函数label_title()中删除了代码,并将其放在类DemoApp(MDApp)级别:

class DemoApp(MDApp):
    url_archon2 = "web url"
    r_dev_info_archon2 = requests.request("GET", url_archon2, headers=headers, data="")
    ch_numb_archon2 = r_dev_info_archon2.json()['items']['contentChannel']

在KV文件中:

MDLabel
    text: app.ch_numb_archon2
    size_hint_y: None
    height: self.texture_size[1]
    padding: 0, "20dp"
    halign: "center"
    theme_text_color: "Primary"

比我想象的容易

相关问题 更多 >

    热门问题