【发布时间】:2018-11-19 10:52:24
【问题描述】:
我不知道如何更改我的 kivy 应用程序中使用的显示设置面板的类型。我目前使用以下代码来创建面板:
def build_config(self, config):
config.read("settings.ini")
App.build_config(self, config)
def build_settings(self, settings):
settings.size_hint = (0.8, 0.8)
settings.pos = (200,200)
settings.interface_cls = SettingsWithSidebar()
settings.add_json_panel("General Settings", self.config,
filename="settings_general.json")
settings.add_json_panel("Analysis", self.config,
filename="settings_analysis.json")
App.build_settings(self, settings)
这给了我标准的SettingsWithSidebar 面板,看起来比较难看。我想将其更改为标准的Settings 面板,它看起来更好,但不知道该怎么做。
我查看了docs 并找到了interface_cls 属性,但将其值更改为Settings() 或SettingsWithSidebar() 似乎无济于事。
我的第二个问题是我不知道如何根据应用程序的位置设置设置面板的位置(200,200 是占位符)。我知道如何在 kv 语言中实现这一点,但我不知道如何在创建应用程序之前引用它的 pos。我确实想将设置面板的中心绑定到应用程序窗口的中心,但我找不到有关如何完成该任务的资源。
【问题讨论】:
-
我怀疑你在设置
interface_cls时应该去掉()。 -
你的意思是我应该简单地将其设置为“设置”而不是“设置()”?我也试过了,但也没有用。
-
是的,我就是这个意思。
-
其实我觉得
Settings和SettingsWithSidebar是一样的。查看documenttion 并从中选择一个标识为settings widget的类。
标签: python python-3.x kivy