在更改时显示kivy滑块值[关闭]

Posted

技术标签:

【中文标题】在更改时显示kivy滑块值[关闭]【英文标题】:Display kivy slider value as it changes [closed] 【发布时间】:2014-05-14 06:33:48 【问题描述】:

我想知道是否可以将 kivy 微调器值显示为移动标签,以便用户确切知道滑块的当前值是什么。

谢谢

【问题讨论】:

您可以将on_touch_move: myFunctionOnMove() 作为您的kv 文件中Slider 类的属性写入,然后将self.myFunctionOnMove() 添加到您的python 源代码中以执行您希望它执行的操作。 【参考方案1】:

您只需将侦听器绑定到值更改事件

some_label = Label(...)
my_slider = Slider(...)
def OnSliderValueChange(instance,value):
    some_label.text = str(value)

my_slider.bind(value=OnSliderValueChange)

正如 .kv 文件中指出的那样,您可以执行类似的操作

<PongGame>:
    ...
    canvas:
        Rectangle:
            ...
    Label:
        ...
        text: str(slider_id.value)
     Slider:
        ...
        id: slider_id

【讨论】:

谢谢 Joran,这是一个业余爱好者的问题。您将如何从 kv 文件中执行此操作?对于 TextInput 我可以使用 'on_focus:root.setLabel(self.text)' 但我找不到对 Spinner 或 Slider 做同样事情的方法 使用on_value我认为(我认为.bind(some_var=handler_fn)在kv文件中大致等于on_some_var on_value 为 Slider 完成了这项工作。 'on_text' 为 Spinner ==> 问题解决了!谢谢 在 kv 中,如果小部件在同一规则中,则不需要使用 on_value 事件。您可以只给滑块一个 id (id: slider_id),然后在标签中写入 text: str(slider_id.value)。 kv 语言会自动检测引用并为您创建绑定。 这个答案在这种特殊情况下帮助了我,但是我在文档中的哪里可以找到这个?查看API ref,我看不到可以处理哪些事件,以及哪些参数将被提供给事件处理程序。

以上是关于在更改时显示kivy滑块值[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

非线性 ui 滑块值/占位符

更改 jQuery UI 滑块值选项时动画滑块句柄?

在 LabVIEW 的每种情况下,如何在 while 循环中更改滑块值?

滑块值更改时快速更新表格中的单元格数

如何通过Appium / WebdriverIO更改iOS滑块值

如何使用滑块值更改放大缩小 UIimageView