刷新设置屏幕/更新配置上的设置站点

2024-09-30 14:18:17 发布

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

我通过json文件创建了一些设置面板。如果用户更改了某个设置,我将使用\u config \u change来评估用户所做的操作。现在是棘手的部分: 根据用户的选择,我需要更新其他设置。问题是,我可以将内容写入配置,下次打开设置时,会读取新的配置,但我实在想不出任何方法来“刷新”设置屏幕并立即显示更新,就像我对配置所做的那样。你知道吗

这是我的零钱上剪下的一小块:

def on_config_change(self, config, section, key, value):
    if section == 'my_section':
        if key == 'var1':
            if value > var2:
                # TODO: find a way to refresh the settings screen to reflect the change below
                self.config.set(section, key, var2)
                self.config.write()
                # self.settingsObj.canvas.ask_update()  # not working
                # self.settingsObj.do_layout()          # not working

我试过了canvas.ask\u更新()和do_layout()来更新设置屏幕,但它不起作用。 我假设,这个值是一个ObjectProperty,我可以通过某种方式访问它们以立即反映更改,但我不知道如何做到这一点。你知道吗

顺便说一句:目标是限制用户输入的值的范围。你知道吗

我希望你能帮我! 提前多谢了!:)

干杯, 克劳斯


Tags: thetokey用户selfconfigif屏幕