繁体   English   中英

如何将 label 作为 kivy 中的按钮

[英]How to make a label as button in kivy

我想让 label 在.kv 文件中充当按钮和代码。 我参考了文档,其中提到我们必须在规则中使用 @ 来继承按钮行为的属性。 我尝试了以下代码,但它给出了错误。 好心的帮助

tut12.py

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder

class Box_3(BoxLayout):
    pass

class Demo_11(App):

    def build(self):
        return Builder.load_file("kv\Design10.kv")

if __name__ == "__main__":
    Demo_11().run()

设计10.kv

<MYLabel@ButtonBehavior + Label>:

Box_3:

    MYLabel:
        text: 'Hi'
        on_press: self.text = "hello"

错误消息是:

cls = Factory_get(cname) 文件“C:\Users\pavan m sunder\envs\kivy\lib\site-packages\kivy\factory.py”,第 153 行,在getattr rootwidgets.append(Factory.get(basecls))文件“C:\Users\pavan m sunder\envs\kivy\lib\site-packages\kivy\factory.py”,第 131 行,在getattr raise FactoryException('Unknown class <%s>' % name)

kivy.factory.FactoryException:未知 class < ButtonBehavior >

去掉里面的空格

<MYLabel@ButtonBehavior + Label>:

做到:

<MYLabel@ButtonBehavior+Label>:

奇怪的是空间很重要,但在这里他们确实如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM