【发布时间】:2014-07-13 18:47:13
【问题描述】:
我想扩展一个 Kivy 设置面板,为我的应用选择一些线条/背景等的颜色。
我在 Kivy 设置面板中添加了一个新的 ColorPicker 类型,它几乎可以工作了。但是我的问题是当前选择的颜色的值没有显示在设置面板中。 (缺少文字见下图红圈)
我认为这是一个简单的问题,但我还没有找到解决方法。我的类的名称为 SettingColorPicker(基类 SettingItem),如果我将其重命名为 SettingString 并删除原始 SettingString 类,则它会按预期工作。不知道为什么?!
我这样注册了新类型:
s = Settings()
s.register_type('colorpicker', SettingColorPicker)
我的其余代码与 Class SettingPath 代码非常相似。我只创建了一个颜色选择器而不是 FileChooser。
这个位置的标签在哪里得到它的价值?源码里没找到https://github.com/kivy/kivy/blob/master/kivy/uix/settings.py
我还想将该标签中的文本颜色更改为当前选择的颜色。我怎样才能做到这一点?但如果我了解标签的创建位置,这可能很容易。
如果我单击文本“BG 颜色”(它是 Kivy 中包含的 ColorPicker),效果如下:
您可以在此处找到源代码: https://gist.github.com/AWolf81/421976e65099d3e58a32
您可以直接运行它来查看描述的问题。
【问题讨论】: